Wie erstelle ich ein Array in Excel / VBA?
Guten Tag,
ich muss ein eindimensionales Array erstellen, welches 3 Namen aus dem ersten Tabellenblatt von A1-A3 speichert. Diese sollen dann auf dem zweiten Tabellenblatt von A1-C1 wieder ausgegeben werden. Dabei müssen die Namen in die Tabelle eingetragen werden und daraus entnommen werden. Ich soll dabei "ReDim Preserve" benutzen, doch ich habe keine Ahnung wie ich das machen soll.
1 Antwort
Suboptimierer
bestätigt
Von
Experte
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
Computer, Schule
Sub arrayprogramm()
'Das Tabellenblatt Tabelle1 aktivieren.
'Alle Lese- und Schreibbefehle werden nun auf Tabelle1 ausgeführt
Worksheets("Tabelle1").Activate
'Array mit 3 Speicherplätzen erstellen
Dim namenArray(1 To 3) As String
For i = 1 To 3
namenArray(i) = Cells(i, 1) 'Einspeichern der 3 Namen
Next
'Aktivieren von Tabellenblatt2. Dieses muss bereits existieren!
Worksheets("Tabelle2").Activate
'Ausgeben der 3 Namen
For i = 1 To 3
Cells(i, 1) = namenArray(i)
Next
End Sub
Der Befehl ReDim Preserve kann ein Array erweitern. Dieses Array oben hat eine Größe von 3. Das habe ich so zu Anfang deklariert, denn es sollen 3 Namen gespeichert werden.
Soll ein vierter Name gespeichert werden, wäre das Array zu klein und müsste vergrößert werden. Dann benötigt man ReDim Preserve. So aber nicht.
ReDim Preserve namenArray(4)