Variable

Hallo Experten,

wie muss ich eine Variable aus " Diese Arbeitsmappe " deklarieren um sie in den anderen Tabellenblättern zu verwenden ?
In „Diese Arbeitsmappe“( activeWorkbook) wird ein Wert ermittelt über VBA, diesen Wert möchte ich z.B. in Tabelle1 übernehmen. Komme nicht drauf, als was diese Variable deklariert werden muss.
Wer Weiss Rat ?

Hoffende Grüße Peter

eine Variable, die innerhalb des gesamten Modules seine gültigkeit hat deklariert man mit: Public
Beispiel:
Public deineVariable as string
sub test()
bla,bla
end sub

erst eine öffentliche Variable deklarieren und anschliessend die Prozeduren schreiben.

Definition in Modul, nicht in Arbeitsmappe
Meines Wissens kann man zwischen den Tabellenblättern und den Arbeitsmappen gar nicht referenzieren. Du musst also alle Funktionen und Variablen, die gemeinsam genutzt werden sollen, in einem separaten Modul ablegen (Einfügen/Modul).

Dort müssen projektweite Variablen mit Public statt mit Dim deklariert werden.

Kristian

wie muss ich eine Variable aus " Diese Arbeitsmappe "
deklarieren um sie in den anderen Tabellenblättern zu
verwenden ?
In „Diese Arbeitsmappe“( activeWorkbook) wird ein Wert
ermittelt über VBA, diesen Wert möchte ich z.B. in Tabelle1
übernehmen. Komme nicht drauf, als was diese Variable
deklariert werden muss.

Danke
Genau das meinte ich, Danke Harald

Gruß Peter

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Danke auch Dir Kristian.
Bin auch vom Workbook weg zum eigentlichen Blatt dann klappts mit PUBLIC.

Vielen Dank, Gruß Peter

Innerhalb e. Blattes brauchst Du kein Public - owT
o.w.T.

Hi Kristian,

Ich habe ein Blatt mit mehreren Steuerelementen (Übersicht), hier laufen die Daten der anderen Blätter zusammen. In diesem Blatt verzweige ich in ein Unterprogramm, das mir die Anzahl der aktivierten CommandBars liefert. Dann, nach dem CALL habe ich den Wert vom Index für die Commandbars. Wenn ich ohne PUBLIC arbeite funktioniert es nicht ( gibt immer den Wert „0“ ), mit PUBLIC dagegen funktionierts einwandfrei.

Gruß Peter