D'après ce que je peux voir sur le web, il s'agit d'une plainte assez fréquente, mais les réponses semblent plus rares. Le problème est le suivant :
Nous avons un certain nombre d'applications Excel VBA qui fonctionnent parfaitement sur les machines de plusieurs utilisateurs. Cependant, sur une machine, elles s'arrêtent sur certaines lignes de code. Il s'agit toujours des mêmes lignes, mais ces lignes semblent n'avoir rien en commun les unes avec les autres.
Si vous appuyez sur F5 (exécuter) après l'arrêt, l'application continue, c'est presque comme si un point d'arrêt avait été ajouté. Nous avons essayé de sélectionner "supprimer toutes les pauses" dans le menu et même d'ajouter une pause et de la supprimer à nouveau.
Nous avons déjà rencontré ce problème avec des applications uniques et nous l'avons résolu en coupant le code des modules, en le compilant puis en le recollant, etc.
Le problème semble désormais lié à Excel lui-même plutôt qu'à un simple fichier .xls, de sorte que nous ne savons pas très bien comment gérer ce problème.
Toute aide serait la bienvenue :)
Merci,
Philip Whittington
2 votes
L'utilisateur appuie-t-il sur "escape" au milieu d'un traitement ? Ou une autre application qui envoie la touche Echap ?
1 votes
Après avoir sélectionné Supprimer tous les points d'arrêt Avez-vous également recompilé et sauvegardé le projet VBA ? J'ai constaté un problème similaire dans Word VBA où des points d'arrêt précédemment supprimés provoquent toujours une rupture.
0 votes
Rien n'est traité pendant l'exécution, shahkalpesh. Divo - merci, je ne les ai peut-être pas essayés précisément dans cet ordre. Je vais le faire maintenant...
0 votes
En plus du commentaire de divo, il peut être utile de commenter les lignes pertinentes et toutes les lignes qui arrêteraient le débogage, elles peuvent alors être décommentées et le code recompilé (à nouveau).
0 votes
Et j'ai oublié de mentionner : Pour déclencher une reconstruction, il est normalement nécessaire de modifier une ligne, puis de déplacer le curseur sur la ligne suivante pour signaler que le code source a été modifié (par exemple, effectuer une modification, déplacer le curseur vers le bas, déplacer le curseur vers le haut et annuler la modification manuellement).