Gibt es ein vom Benutzer zu definierendes Wörterbuch für die Codeprüfung in VBA?

... komplette Frage anzeigen

2 Antworten

Das Problem mit der Groß-/Kleinschreibung von Namen kenne ich bei VB(A)6 auch.

Hab jahrelang immer wieder danach gesucht, wo genau diese Namen im Projekt gespeichert werden, hab aber nichts gefunden.

Manchmal hilft es, wenn man einen Namen mit denselben Buchstaben in korrekter Groß-/Kleinschreibung deklariert:

Private Sub dummy_NamenFixieren
Dim MsgBox
End Sub

(leider hilft's auch nicht immer - wenn's mich allzusehr gestört hat, hab ich ein neues Projekt angelegt und alle Elemente 1:1 rüberkopiert.)

Anscheinend tritt das auf, wenn man einen Namen in Kleinbuchstaben eintippt, bevor er dem System bekannt ist - also insbesondere bei Steuerelementen, die man gerade erst angelegt hat und wo man seither kein anderes Element markiert hat, wenn man sie im Code das erste Mal erwähnt.

Irgendwann hab ich mir angewöhnt, auf Buttons, Labels usw. erstmal doppelzuklicken, damit die Namen schon mal in korrekter Groß-/Kleinschreibung vorliegen. Zumindest nach dem Anlegen von Elementen mal ein anderes Element zu markieren.

Hab ich bei VB.NET noch nie erlebt. (Wird wirklich allmählich Zeit, dass Microsoft irgendwann mal mit VBA.NET zu Potte kommt.)

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von BerchGerch
17.08.2016, 12:31

Vielen Dank für deine Antwort. Das ist wirklich gut zu wissen :-)

0

Ein Wörterbuch gibt es da nicht. Es gibt aber einen Objektkatalog, wo alle Namen drinstehen, die definiert sind (kannst du mit F2 aufrufen oder Ansicht > Objektkatalog). Manchmal spinnt die automatische Groß-/Kleinschreibung ein bisschen rum. Vielleicht hast du auch eine Variable, Prozedur oder ein Steuerelement mit dem Namen msgbox irgendwo erstellt.

Eine Sache, die bei unnachvollziehbaren Fehlern in Access oft hilft, ist der undokumentierte Befehlszeilenparameter "decompile". Also man macht sicherheitshalber eine Kopie seiner Datenbank und ruft sie dann über Start > Ausführen (bzw. Windows-Taste+R) mit dem Parameter /decompile auf (z.B. "C:\\Program Files\\Microsoft Office 2007\\Office12\\MSACCESS.EXE" "C:\\access\\meineDatenbank.accdb" /decompile)

Du kannst ja mal schauen, ob es was vergleichbares auch für Word gibt.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von BerchGerch
24.08.2016, 19:15

Vielen Dank für deine Antwort. Im Objektkatalog ist die MsgBox ordentlich aufgeführt :-)

0

Was möchtest Du wissen?