ich schreibe gerade an einem kleinen Tool, für das ich ein Array erstellen möchte (Einfach die Zahlen von 1 bis 30). Diese sollen dann an späterer Stelle (in einem Klassenmodul, dass dynamisch erstellten Buttons einer UserForm einen Click-Befehl zuordnet) einfach geändert werden (in meinem Fall = 0 gesetzt werden, um klar zu machen, dass diese Zahl (z.B. die 7) bereits genutzt wurde.
Ich habe dieses Array, wie auch z.B. eine Variable als Public deklariert. Die Variable darf ich ändern, die Elemente des Arrays nicht.
Hier einmal der Code:
Im Modul der UserForm mit dem Namen Schneidezettel:
______________________________________
Public nummerierung As Variant
Public index_nummerierung
Sub UserForm_Initialize()
ReDim nummerierung(29) As Integer
probennummer = 1
nummer_probe = 0
mark = 0 'anfangs ist keine schicht markiert
For f = 0 To 29
nummerierung(f) = f + 1
Next
index_nummerierung = 0
End Sub
_______________________________________
Im Klassenmodul Klasse1:
Sub btEvents_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal _
Y As Single)
MsgBox Schneidezettel.nummerierung(0)
Schneidezettel.nummerierung(0) = 19
MsgBox Schneidezettel.nummerierung(0)
MsgBox Schneidezettel.index_nummerierung
Schneidezettel.index_nummerierung = 19
MsgBox Schneidezettel.index_nummerierung
End Sub
________________________________________
Die Messageboxen liefern
1
1
0
19
Obwohl ich erwartet habe, dass sie
1
19
0
19
liefern. Ich darf also die Variable Schneidezettel.index_nummerierung ändern, aber nicht das Element des Arrays Schneidezettel.nummerierung(0), obwohl es korrekt abgerufen wird.
Vielen Dank schon einmal und ich hoffe, dass mir jemand helfen kann.
Liebe Grüße,
Dennis