Tool / Funktion - um sich alle Variablen auflisten zu lassen?

  • Excel

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von sronny.

    Tool / Funktion - um sich alle Variablen auflisten zu lassen?

    Hi liebes Forum...

    Ich hätte da mal eine Frage, die nicht wirklich in ein Themengebiet passt...

    Ich frage mich ob es wohl für VBA (im Excel) eine Möglichkeit gibt, sich alle Variablen, denen man einen Wert zuweist... auflisten zu lassen...??

    Also im Grunde...

    wenn man munter drauf losprogrammiert und im Nachhinein (vor der Ausführung) seine Variablen mit Datentypen deklariert...

    Gibt's da vl. eine Funktion im Excel... oder gibt's ein externes Programm/Tool, oder sowas, das mir meinen SourceCode durchschaut und mir automatisch eine unikate Liste aller Variablen, erstellt - sodass ich diese dann, deklarieren kann.. und sicher sein kann, dass nix "vergessen" wurde... etc...?

    Weiß da jemand was von euch?

    Vielen Dank!

    VG Tim

    *Topic verschoben*

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Du kannst die Variablen, die du deklariertst nach dem erstellen der Überwachung hinzufügen(Rechtsklick auf die Variable -> Zur Überwachung hinzufügen). Damit wird dir die Variable ständig mitprotokolliert, welchen Wert sie hat.
    In general (across programming languages), a pointer is a number that represents a physical location in memory. A nullpointer is (almost always) one that points to 0, and is widely recognized as "not pointing to anything". Since systems have different amounts of supported memory, it doesn't always take the same number of bytes to hold that number, so we call a "native size integer" one that can hold a pointer on any particular system. - Sam Harwell
    Hallo Radinator,

    Danke für deinen Post, aber das meinte ich eigentlich nicht...

    Die Ausgangssituation, wäre, jene, dass ich Code produziere und noch nicht ausführe...

    Beim Produzieren, weiße ich aber noch keinen Datentyp zu....

    Als Beispiel... ich schreibe...:


    a = blabla
    b = blabla

    zähle = blabla...

    etc...

    Jetzt nehmen wir mal an, ich habe einen mega langen Code... und zb. 60 verschiedene Variablen...

    Bevor ich nun ausführen möchte... muss ich diese ganzen Variablen natürlich erst mal deklarieren, also Datentypen zuweisen...

    Und das ist nun der Knackpunkt:

    Jetzt ists natürlich mühsam, sich die ganzen 60 Variablen raus zu suchen um sie Anfangs aufzulisten....

    Weißt was ich meine?

    Und ich würde deshalb gerne wissen, obs da vl. ein Tool gibt, dass sich den Source-Code von Anfang bis Ende durchsieht und automatisch erkennt, was eine Variable ist (vl. durch Merkmale... --> also... überall wo ein Begriff steht, der nicht zur Sprache dazugehört und z.b. danach ein "=" hat....). - Und mir dann eine Auflistung dieser Variablen gibt, sodass ich jenen einfach nur noch mit "Dim" "As ...." den Datentyp zuweisen kann... und nicht selber mühsam raussuchen muss....




    Setze Option Explicit und dann drück im CodeEditor auf Debug->Compile VBAProject. Es werden dir die Fehler angezeigt ;) (Allerdings nicht in einer Liste sondern es wird zu jedem fehler gesprungen mit Fehlermeldung des Compilers)

    Ein Tool wie du es dir vorstellst kenn ich zumindest nicht selber. Aber es gibt einige PlugIns die nennen sich CodeAnalyser usw. Mit denen ist das sicher möglich, aber die sind vermutlich nicht umsonst. Es gibt noch ein Tool das heisst VBA Inspector. Habe es noch nicht probiert aber das sollte das auch können.

    LG
    Das ist meine Signatur und sie wird wunderbar sein!
    Als Ergänzung zu @Monos Hinweis:
    Ich habe meine Options so gesetzt, dass bei "Require Variable Declaration" ein Haken drin ist und bei "Compile On Demand" der Haken weg ist.
    Damit wird automatisch bei jeder Ausführung irgendeiner Routine das komplette Projekt kompiliert und geprüft.
    Das erzieht von Anfang an zu sauberer Deklaration.
    Eine Variable ohne Deklaration und ohne zugewiesenen Datentyp darf es eigentlich nie geben, auch nicht zu Testzwecken.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --
    Nein.
    Option Explicit allein reagiert erst, wenn der Code kompiliert wird.
    Standard ist aber "Compile On Demand", also erst, wenn die Routine das erste Mal aufgerufen wird.
    Require Variable Declaration ist übrigens ein forciertes ​Option Explicit.
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --