Jörg Lorenz: VBA - Probleme mit Public-Variable

Beitrag lesen

Hi,

Anstatt die Funktion aufzurufen, die der Variablen einen Wert zuweist, könnte ich doch selbst der Variablen einen Wert zuweisen.

puh, nun muss ich doch mal auf einen Fehler hinweisen, den ich bisher übergangen habe. Ich gehe jetzt mal nur auf Funktionen und Routinen ein, nicht aber auf Property & Co.

Eine Funktion gibt immer einen Rückgabewert zurück. Sie beginnt mit Function und endet mit End Function. Insofern ist es eigentlich falsch, wenn wir hier von Funktionen reden. Das heißt, dass das Ganze hier mit Funktionen eigentlich nichts im eigentlichen Sinne zu tun hat.

Eine Routine (Sub) _bewirkt_ irgendwas. Sie gibt im eigentlichen Sinne nichts zurück, sondern führt etwas aus, wie zum Beispiel die Zuweisung eines Wertes an eine Variable.

In VB/VBA beginnt jede Folge von Anweisungen usw. mit einer Überschrift. Das kann Function sein, wie auch Sub, Property Get, usw.  Beendet wird das Ganze mit End, wie z. B. End Function, End Sub, End Property, usw. Ohne diese Überschrift kann VB/VBA nichts mit irgendwelchen  Zeilen anfangen - es sei denn, es handelt sich um Konstanten oder andere Deklarationen. Also: Keine Überschrift, keine Ausführung.

Variable = Wert;

So, wo soll nun diese Zeile stehen (abgesehen vom überflüssigen Semikolon)? VB/VBA weiß damit nichts anzufangen. Soll es eine Funktion sein? Soll es eine Sub sein? Soll damit ein Objekt erstellt werden?

Oder nicht? Ist die vielleicht gar schreibgeschützt von hier aus?
Ansonsten könnte ich aus dem gleichen Grund, aus dem ich eine Schreib-Funktion benutze, eine Lese-Funktion benutzen.

Wie geschrieben: Mit Funktionen hat es gar nichts zu tun, wie auch mit Schreibschutz nicht. Es ist halt nur eine Eigenart einer Sprache.

Viele Grüße

Jörg