Forums Neueste Beiträge
 

Gültigkeit von Variablen

07/09/2007 - 11:15 von Beat Leuppi | Report spam
Hallo!

Ich habe da ein Problem mit Variablen, die sich nicht so verhalten wie
es eigentlich in den Lehrbüchern und FAQs steht.

Mein Problem:

Ich habe in einem Modul einen Type deklariert und gleich danach eine
Public Variable mit diesem Typ.

Also

Type Z
z1 as integer
z2 as String
End type

Public A(5) as Z

Ich brauche maximal 6 solche Variablen

Nun habe ich ein Formular in dem ich diese Variablen brauche um Daten
anzuzeigen und evt. zu àndern.

Das übernehmen aus der DB und das anzeigen funzt perfekt, und wenn ich
keine Änderungen vornehme sondern sie unveràndert in eine andere
Tabelle zurückschreiben stimmt alles.

Nun habe ich aber die Möglichkeit die Variable z2 zu àndern.
Ich habe diese für die Anzeige in ein Textfeld übertragen:

Me!Texte54.Value = A(1).z2

dann habe ich eine Prozedur

Private sub Texte54_AfterUpdate

A(1).z2=Me!Texte54.Value

End Sub

Beim Debuggen sehe ich dann auch, dass meine Variable den Wert
annimmt. Sobald ich dann aber weitermache steht im Debugger
"ausserhalb Kontext" und kein Wert mehr.

Wie kann diese als Public definierte Variable ausser Kontext sein? Sie
ist im Code zum Formular nicht neu dimensioniert worden!

mfG Beat
 

Lesen sie die antworten

#1 Mark Doerbandt
07/09/2007 - 11:25 | Warnen spam
Hallo, Beat,

Beat Leuppi:

Ich habe in einem Modul einen Type deklariert und gleich danach eine
Public Variable mit diesem Typ.

Also

Type Z
z1 as integer
z2 as String
End type

Public A(5) as Z

Ich brauche maximal 6 solche Variablen

Nun habe ich ein Formular in dem ich diese Variablen brauche um Daten
anzuzeigen und evt. zu àndern.

Das übernehmen aus der DB und das anzeigen funzt perfekt, und wenn ich
keine Änderungen vornehme sondern sie unveràndert in eine andere
Tabelle zurückschreiben stimmt alles.

Nun habe ich aber die Möglichkeit die Variable z2 zu àndern.
Ich habe diese für die Anzeige in ein Textfeld übertragen:

Me!Texte54.Value = A(1).z2

dann habe ich eine Prozedur

Private sub Texte54_AfterUpdate

A(1).z2=Me!Texte54.Value

End Sub

Beim Debuggen sehe ich dann auch, dass meine Variable den Wert
annimmt. Sobald ich dann aber weitermache steht im Debugger
"ausserhalb Kontext" und kein Wert mehr.

Wie kann diese als Public definierte Variable ausser Kontext sein? Sie
ist im Code zum Formular nicht neu dimensioniert worden!



was sagt denn ein

?A(1)

im Direktfenster?

Wenn Du die Variable unter Locals siehst, koennte sie dort angezeigt
werden, weil sie in der Prozedur benutzt wird und danach ausserhalb
des Kontexts dieser Prozedur sein. Unter Watch (Überwachung) sollte
sie dann sichtbar sein - markiere sie dazu in dem Modul, wo Du sie
deklarierst und fuege einen Watch hinzu.

Gruss - Mark

Informationen fuer Neulinge in den Access-Newsgroups unter
http://www.doerbandt.de/Access/Newbie.htm

Bitte keine eMails auf Newsgroup-Beitràge senden.

Ähnliche fragen