Lors de la modification de Microsoft Office VBA, comment puis-je désactiver les messages contextuels «Erreur de compilation»?

134

Lorsque vous modifiez une macro ou une fonction Microsoft Office VBA, vous déplacez souvent votre curseur à partir d'une ligne que vous n'avez pas terminée. Par exemple, pour aller copier quelque chose que vous voulez coller dans cette ligne. Mais, si cette ligne partielle n'est pas syntaxiquement valide, l'éditeur VBA interrompt votre travail en affichant un message "Erreur de compilation" qui doit être rejeté.

Existe-t-il un moyen de désactiver la boîte de message? Je trouve ça irritant ...

(Cela se produit avec Excel Visual Basic pour Applications, Outlook VBA, Word VBA, etc.)

Iain S
la source

Réponses:

179

Procédez comme suit dans la fenêtre de votre éditeur VBA (intitulée «Microsoft Visual Basic pour Applications»):

Cliquez sur le menu " Outils " puis sur " Options ".

Dans l'onglet "Editeur" des options, décochez la case " Auto Syntax Check ". (Voir capture d'écran ci-dessous.)

Ce changement n'empêche pas l'éditeur d'arrêter de compiler en arrière-plan et de marquer les erreurs de syntaxe en rouge (ou quel que soit le formatage spécifié dans l'onglet Options "Format de l'éditeur").

Les programmes MS Office partagent cet éditeur VBA commun, donc si vous modifiez une option lors de la modification de VBA pour Excel, vous l'avez modifiée pour Outlook, Word, etc.

Boîte de dialogue Options des outils de l'éditeur MS VBA

rayon
la source
5
Juste FYI. Cela n'a pas fonctionné pour moi jusqu'au redémarrage d'Excel 2010
DontFretBrett
39
Il convient également de mentionner que même avec la case ci-dessus décochée, les erreurs de syntaxe SONT toujours marquées en rouge ... ce qui est utile!
Jonny
2
Cela fonctionne également pour l'IDE VB6 (je sais, je sais, nous sommes en 2015 ... mais le code hérité doit encore être mis à jour occasionnellement)
Cemafor
11
La programmation est rarement linéaire. Pourquoi est-ce que Microsoft a défini la vérification automatique de la syntaxe par défaut?
Holene
5
Merci OMG. J'ai formaté, réinstallé et j'étais prêt à casser quelque chose si je ne le comprenais pas bientôt. "Ding!" ... Oui, VBA, je me rends compte que j'ai changé de ligne pour copier quelque chose pour cette ligne. "
ashleedawg
25

Dans le VBE, Tools - Options - Editor et décochez Auto Syntax Check. Il deviendra rouge du mauvais code, mais ne vous donnera pas la fenêtre contextuelle.

Dick Kusleika
la source