von gogo » Di, 25.10.2011 01:47
Das Laden des Dokuments ist erst NACH der Berechnung der Zellen abgeschlossen - das Array wird also ausgewertet bevor es befüllt wurde.
Code: Alles auswählen
Global i(1,2) As Single
Function INIT_ARRAY()
i(0,0) = 1
i(1,0) = 7
msgbox "Done"
END Function
Function TEST_ARRAY()
REM i() = Array(Array(1,2,3),Array(7,8,9)) funktioniert nicht!!
REM i(0,0) = 1
REM i(1,0) = 7
MsgBox "(0,0): "&Str(i(0,0))&Chr(13)&"(0,1): "&Str(i(0,1))&Chr(13)&"(0,2): "&Str(i(0,2))&Chr(13)&"(1,0): "&Str(i(1,0))&Chr(13)&"(1,1): "&Str(i(1,1))&Chr(13)&"(1,2): "&Str(i(1,2))
End Function
Die msgbox "Done" hab' ich dazugeschrieben, dann siehst Du zu welchem Zeitpunkt die Funktion läuft.
Wenn Du nach dem Done-Prompt [Strg]+[Umschalt]+[F9] eingibst, werden die Zellen neu berechnet, dann kommen in der Fkt TEST_ARRAY() auch die richtigen Werte.
g
Das Laden des Dokuments ist erst NACH der Berechnung der Zellen abgeschlossen - das Array wird also ausgewertet bevor es befüllt wurde.
[code]Global i(1,2) As Single
Function INIT_ARRAY()
i(0,0) = 1
i(1,0) = 7
msgbox "Done"
END Function
Function TEST_ARRAY()
REM i() = Array(Array(1,2,3),Array(7,8,9)) funktioniert nicht!!
REM i(0,0) = 1
REM i(1,0) = 7
MsgBox "(0,0): "&Str(i(0,0))&Chr(13)&"(0,1): "&Str(i(0,1))&Chr(13)&"(0,2): "&Str(i(0,2))&Chr(13)&"(1,0): "&Str(i(1,0))&Chr(13)&"(1,1): "&Str(i(1,1))&Chr(13)&"(1,2): "&Str(i(1,2))
End Function
[/code]
Die msgbox "Done" hab' ich dazugeschrieben, dann siehst Du zu welchem Zeitpunkt die Funktion läuft.
Wenn Du nach dem Done-Prompt [Strg]+[Umschalt]+[F9] eingibst, werden die Zellen neu berechnet, dann kommen in der Fkt TEST_ARRAY() auch die richtigen Werte.
g