VB, mehrdimensionales Array

Hallo!

Mir array() kann man ja ein eindimensonales Feld anlegen.
Kann ich damit auch mehrdimensionale Felder anlegen oder geht das nur mit Tricks (wie in C) ?

Danke,

Michael

MoiN!

Mehrdimensionale Arrays werden genauso erstellt wie eindimensionale:

dim array1(2,10) 'ok
array1(1,1)=1 'ok
array1(2,1)=2 'ok
array1(3,1)=2 'falsch

dim array2() 'ok
redim array2(3,5) 'ok
redim array2(5,5) 'falsch
redim array2(3,15) 'ok nur die letzte dimension kann verändert werden
redim preserve array2(3,15) 'ok, mit Beibehalten des alten Inhalts

dim array3() 'ok
redim array3(1,2,3,4,5) 'fünf dimensionen

cu, holli

Danke, und weißt Du auch, wie man solch ein Array komplett vorgesetzen kann?

so etwas wie in einer Dimension:

dim a(5)
a = array (4, 8, 3, 78, 1)

Die Array-Funktion kann leider nur bei eindimensionalen Arrays angewendet werden. Es geht sogar so weit, dass ein mehrdimensionales Array automatisch und kommentarlos in ein eindimensionales umgewandelt wird, wenn man mit der Array-Funktion darauf losgeht.
Zuerst die Array-Funktion (auf ein eindimensionales) Array anwenden und dann mit redim preserve auf ein zweidimensionales ändern funktioniert auch nicht, weil man ja die 1. Dimension nicht verändern kann, wenn es deren mehrere gibt.

Soweit meine heutigen Testergebnisse
Amen
:wink:
Roland

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

Tja, dann muß ich mir halt ne andere Implementierung überlegen…

Danke für die Hilfe! :smile:

Michael