Clever-Excel-Forum

Normale Version: Prozeduren protokollieren
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo Gemeinde, gibt es eine Möglichkeit den Namen der aktiven Prozedur in eine Zelle zu schreiben, bzw. die Bezeichnung der Prozedur in einer Variabeln zu speichern?
Code:
Sub Verlauf()
    dim Name
    dim Zaehler
    Name = "Sub Verlauf" 'in Abhängigkeit von der aktiven Prozedur'
    Zaehler = Cells(1,2)+1
    Cells(1,1)= Name
    Cells(1,2)= Zaehler
end Sub

Ich habe vermutlich in meinem kleinen Projekt ein klein etwas den Überblick verloren Sad

Danke und einen schönen Sonntag noch
Die Frage nach der Sinnhaftigkeit stellt sich eher. Im Fehlerfall wird an der betreffenden Stelle gestoppt. Alternativ kannst du mit F8 und Haltepunkten arbeiten.
Hallo,

setze dir in einer Prozedur einen Haltepunkt und öffne, wenn das Programm an dieser Stelle stoppt, wenn der Tastenkombination STRG+L das Aufrufelistefenster, hier kannst Du sehen, welche Prozeduren vor der gestoppten Prozedur aufgerufen wurden, wobei das zuletzt aufgerufene oben steht.
Hallo,

ja das geht, dein Code ist ein guter Start.

Aber angenommen es gibt viele Prozeduren und man möchte in einem automatisierten Aufruf protokollieren, welche Sub's durchgelaufen sind, dann sollte man einbauen

- Fehlerbehandlung
- systematisches Protokoll

mfg
Danke für alle Antworten. Das Problem ist, dass ich vermutlich bereits die eine oder andere Prozedur unter verischiedenen Namen doppelt habe und diese nun nicht mehr benötigt wird. Wie finde ich solche "Prozedurleichen"? In Excel kann unter "Formeln" ein Pfeil zum Nachfolger oder Vorgänger gesetzt werden - enspricht etwa dem Beitrag von Steffl mit Str+L
Aber gibt es so ne Möglichkeit auch im VBA-Edtor?
Du kannst auch ein Logging zum Testen (kann später auch als Ausführungsnachweis dienen) einrichten:
https://berndplumhoff.gitbook.io/sulprob...es/logging
Hallo,

kommentiere mal die einzelnen Prozeduren aus und starte mal die anderen Makros. Wenn es knallt, wird das auskommentierte Makro noch gebraucht.
Hallöchen,

Ich habe z.B. die mztools gerne genutzt. Gibt es immer noch, kostenlos als 30 Tage Trial. Damit kannst Du neben einer Codedokumentation einschl. Hinweis auf ggf. ungenutzte Makros auch ungenutzte Variablen ermitteln.
Zitat:habe z.B. die mztools gerne genutzt


der Funktionsumfang ist schon riesig, aber für mich als Gelegenheitsnutzer von VBA etwas preisintensiv. Es gibt aber auch keine preiswertere Alternative...oder?
Hallöchen,

also, eine recht einfache Methode für kleinere Umfänge wäre die Nutzung eines Tabellenblattes Smile
Kopiere einfach alle Codes auf ein Tabellenblatt.

Dann filterst Du alle Zeilen mit "Sub" und "Function" erhältst so eine Übersicht Deiner Makros.
Du könntest dann den eigentlichen Namen herausrechnen und mit ZÄHLENWENN schauen, ob die jeweiligen Namen mehr als 1x auftreten.

Ebenso könntest Du mit Variablen umgehen, wenn Du Zeilen mit Dim oder Const filterst. Bei Public könnten Makros und Funktionen dabei sein.

Für einen Gelegenheitsnutzer eher nicht anwendbar, aber mit vielen interessanten Lösungen für den Umgang mit Projekten und Makros sher zu empfehlen ist diese Seite:
cpearson/excel/vbe

Dann gibt es noch das - contextures.com/excelf iles#UserForm - suche auf der Seite nach UF0018
--> den Link müsstest Du mal kopieren und dann das Leerzeichen in den files entfernen.

und noch einiges mehr ...
Seiten: 1 2