Bonjour,
dans l’exécution d’une MACRO en VBA derrière une feuille de calculs, devant donner des résultats sous la forme de différents tableaux apparaissant dans la feuille, je constate l’apparition inattendue de certaines valeurs dans des cellules au cours du calcul . Il ne peut s’agir que d’une erreur de programmation au niveau de l’édition des résultats dans les cellules des tableaux concernés.
Mais je n’arrive pas à identifier cette erreur par l’examen du programme VBA. Je voudrais donc stopper automatiquement l’exécution de la macro au moment précis où la valeur indésirable est inscrite dans la cellule en question , et dont l’adresse est connue, disons « E17 » ou Cells(17,5). Cela me permettra de voir où est l’erreur dans le code, si la ligne responsable est bien indiquée . J’ai essayé d’insérer dans le code un test sur la valeur de la cellule rebelle ( if Cells(17,5)<> « » then stop …): cela fonctionne mais ne permet pas de stopper la macro au moment précis du passage de la valeur dans la cellule. Je voudrais donc placer dans une autre cellule non utilisée disons « B2 » une fonction déclenchant l’arrêt de la macro dès que la cellule « E17 » recevra une valeur numérique. Mais la fonction ( si(…) ;… ;…) ne me paraît pas indiquée pour cette manip , ou comment procéder pour arrêter la macro dès l'écriture de la valeur indésirable dans la cellule. Voyez-vous comment faire ? en résumé comment stopper un calcul dès l’apparition d’une valeur donnée dans une cellule et exactement à l’instant où elle est écrite . Merci pour votre aide.
Partager