Bonjour,
Mettez un point d'arrêt sur votre première ligne de code,
puis, à l'arrêt, un espion sur "Worksheets("Synthèse").Range("EG191").Value"
Attention particulièrement au type de variant (String ou Double)
Cordialement.
Non, EG191 n'est pas sous format texte mais bien sous format nombre vu que c'est le résultat d'une addition. Cependant c'est le début de la macro qui crée les montants de l'addition. Serait-il possible que n'ayant pas fini le calcul de la première partie de la macro la suite se lance mal?
Dranred c'est quoi les string ou double?
J'attaque direct ce que je veux faire après est-ce de là que vient le probléme? (suis débutante)
En gros ça donne ceci:
If Worksheets("Synthèse").Range("EG191").Value < 0 Then
Ce n'est déjà plus ce que tu disais dans ta demande initiale. > 0 ou < 0 ?
Ensuite sans fichier exemple il est très difficile de deviner d'où cela peut venir. Alors si tu veux te donner une chance d'avoir une réponse concluante, joints un fichier <50 ko reproduisant le problème avec quelques données et la macro.
EDIT: le soucis c'est que dans ce type d'exemple, ma macro fonctionne. Comme dans exemple 2. Donc pour moi le probléme vient soit de la masse du fichier (la cellule cible EG191 n'est autres que l'addition de l'addition de plusieurs centaines de données) du coup la dernière addition n'est pas fini quand la macro se lance. Soit de la répétition des exécution entre le IF et le end if qui fait tout planter.
Dans mon exemple 2, le bouton 3 fait les choses correctement.
Le soucis vient donc soit:
- De la multitude de consignes entre IF et END IF.
- De la série de calcul qui ménent au résultat de la cellule de référence qui n'ont peut être pas eu le temps de se recalculer complétement au lancement de la macro.
Dans mon exemple 1, le bouton 3 est lié à la macro 1 et le bouton 4 à la macro 2. J'avais donné un exemple type caricaturé pour donner le contexte (et B14 n'est pas forcément <0 sinon pas besoin d'exemples conditionnels) mais c'était les macros qui étaient intéressantes.
Dans mon exemple 2, j'ai appliqué la macro cité plus haut. Et ça fonctionne. Ma macro est donc bonne pour un exemple simple.
Je l'ai remis dans mon EDIT.
Un exemple ne peut donc pas expliquer mon problème car c'est la masse d'info qui crée mon soucis.