Aide sur macro VBA

Bonsoir,

Je reviens sur un ancien post car j'ai une demande un peu similaire... malgré les explications de Paritec à l'époque je n'arrive pas à modifier la macro aujourd'hui...

Vous trouverez le détail en PJ si vous pouvez m'aider.

Je vous remercie par avance.

Bonne soirée

14testdaewoo41.xlsm (35.22 Ko)

Bonjour,

Les heures négatives ont une coopération passablement négative ...

La comparaison ne se faisait pas > j'ai dû utiliser une cellule afin que cela fonctionne ...

J'ai utilisé la cellule F1 de la "Feuil2" > ce sera à adapter si cette cellule ne te convient pas ...

Si tu veux voir mes modifs > recherche  '' <<< >>> modif ici  dans la macro "Traiter" ...

Un essai ...

ric

Bonjour Ric,

Tout d'abord merci pour cette aide précieuse.

Je fais un essai dans la journée et te tiens informé.

Bonne journée

Après test sur le fichier d'exemple et en modifiant quelques horaires ça fonctionne...

Mais quand je copie mon véritable fichier (sans rien changer sur feuil2, je laisse donc le -00:35 en F1) j'ai un message d'erreur :

Erreur d’exécution '13' : Incompatibilité de type

En ouvrant le débogueur la ligne suivante est surlignée en jaune : If aa(a, 3) <> Worksheets("Feuil2").Range("F1") Then '' Or CDate(aa(a, 3)) < TimeValue("08:00") Then 'là je cherche enfin si

Dois je modifier quelque chose ? As-tu fais des modifs avant sur la feuil1 ?

Bonjour,

J'avoue ne pas avoir remarqué avant que tu roules sous Excel 2003 ...

Je démarre une vieille machine afin de tester et je te reviens ...

ric

Désolé mon profil n'est pas à jour, j'ai changé de version depuis... j'ai 365

La macro fonctionne bien avec le fichier d'exemple mais c'est juste quand je veux copier les nouvelles données que ça bug... si tu as une solution

Bonjour,

Sans un extrait du fichier à analyser pour trouver la source du souci ... difficile ...

S'il contient des données sensibles > tu peux me le passer via message privé ...

ric

Je viens de trouver Ric le problème vient de la ligne 84-85 (le -01:30 =>#EPARS!)

Quand je colle toutes mes lignes dans le fichier il peut y avoir des lignes avec cette donnée là #EPARS!.

Je te joins le fichier actualisé.

Sais tu comment contourner ce problème avec la macro ? faut il faire un "remplacer par" avant de lancer la macro ?

Donc c'est bien ça après avoir testé sur la totalité du fichier en faisant un 'remplacer par' ta macro fonctionne parfaitement.

Faut-il beaucoup corriger la macro ?

Si je décide de supprimer par la suite la condition des -00:35 j'ai juste à supprimer cette ligne là : If aa(a, 3) <> Worksheets("Feuil2").Range("F1") Then ?

Et si je décide d'inclure en plus la condition d'exclure également les -01:30 quelles données je dois modifier dasn la macro ?

Encore merci Ric pour ton aide

Bonjour,

Juste au dessus de la première modif > j'ai ajouté une condition de gestion de l'erreur > ça fonctionne bien ...

ric

Bonjour,

Si je décide de supprimer par la suite la condition des -00:35 j'ai juste à supprimer cette ligne là : If aa(a, 3) <> Worksheets("Feuil2").Range("F1") Then ?

Pas trop sûr > il faudrait que je regarde plus avant ...

Et si je décide d'inclure en plus la condition d'exclure également les -01:30 quelles données je dois modifier dasn la macro ?

Pour l'ajout d'une condition > laisse-moi regarder la chose ...

ric

Bonjour,

Un essai ...

Pour supprimer par la suite la condition des -00:35 > il suffit de vider la cellule F1 tout simplement ...

Afin d'inclure une condition > l'on pourrait utiliser G1 ...
If aa(a, 3) <> Worksheets("Feuil2").Range("F1") And aa(a, 3) <> Worksheets("Feuil2").Range("G1") Then

ric

Alors pour la gestion de l'erreur le problème c'est que cela exclu les lignes avec le #EPARS! =1:30 alors que dans la feuil2 je devrais les retrouver.

En faisant une petite macro avant la tienne pour modifier ces cellules par un 'remplacer par' ça fonctionne (du coup je dois lancer 2 macros au lieu d'une).

Concernant la suppression de -00:35 ça fonctionne bien également, merci.

Si j'ajoute une condition en plus, avec ta nouvelle ligne nickel aussi (j'ai même essayé avec 4), merci.

Je pense laisser comme ça pour le pb des #EPARS! car tu m'as déjà beaucoup aidé.

Je te remercie une nouvelle fois pour le temps passé.

Rechercher des sujets similaires à "aide macro vba"