Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1264to1268
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Array (VBA), Index aßerhalb des gültigen Bereichs

Array (VBA), Index aßerhalb des gültigen Bereichs
Drogist
Hallo Exelaner,
ich stehe echt auf dem Schlauch ...
Ich will einen definierten Bereich einer Tabelle in ein (normales!) Array einlesen. Mit einer For..Next- _
Schleife ist das ja kein Problem, aber ich erinnere mich dunkel, dass das auch in einem Rutsch _ geht. Hier einfach einmal mein Code:

Option Explicit
Option Base 1   'Fällt mir leichter ...
Sub Tab2Array()
Dim aHugo()
aHugo = Range("A1:A30").Value
MsgBox UBound(aHugo)   'OK!
MsgBox aHugo(20).Value 'Error, mit oder ohne .Value
Range("F2:F31").Value = aHugo() 'klappt, die Daten sind also im Array
End Sub
Die erste MsgBox zeigt mir auch freundlich an, dass dort 30 Elemente enthalten sind. Und danach kommt der Fehler #9 mit dem Hinweis, dass der Index außerhalb des gültigen Bereichs sei. Wer ist so nett und entfernt mir das Brett vor dem Kopf? Ich muss doch irgendwie einzelne, definierte Elemente des Array ansprechen können! ... Und funktioniert das mit mehreren Spalten auch? -> aHugo(5, 3)
Beste Grüße
Drogist

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Array (VBA), Index aßerhalb des gültigen Bereichs
20.05.2012 22:17:18
Daniel
Hi
ein Array, das durch Zuweisung aus einer Range erstellst, ist immer ein zweidimensonales Array, auch wenn du in in einer Dimension nur ein Element hast (Zeile oder Spalte)
dh. wenn du einen Wert aus dem Array abrufen willst, dann so mit angabe der 2. Dimension:
MsgBox aHugo(20,1)
Gruß Daniel
AW: Array (VBA), Index aßerhalb des gültigen Bereichs
20.05.2012 22:19:09
Josef

Hallo ?,
du must bei einem mehrdimensionalen Array auch die Spalte angeben und ein Datenfeld hat keine Eigenschaft .Value.
MsgBox aHugo(20, 1)
Und mehrere Spalten gehen natürlich auch.

« Gruß Sepp »

Anzeige
Auch ein scheinbar 1dimensionales, aber ...
20.05.2012 23:45:23
Luc:-?
…aus einer Spalte resultierendes, also einen vertikalen Vektor darstellendes Datenfeld ist stets 2dimensional, während man ein horizontales Vektor-Datenfeld auch in ein 1dimensionales umwandeln kann. Das geht natürl auch mit einem vertikalen, aber das wird dadurch horizontal, was ggf bei der weiteren Arbeit zu berücksichtigen ist.
Gruß Luc :-?
AW: Array (VBA), Index aßerhalb des gültigen Bereichs
21.05.2012 00:57:58
Drogist
Hallo Daniel,
wow, das war schnell ... Und natürlich richtig. Danke, ohne Brett vor dem Kopf ist die Sicht auf die Dinge doch viel besser!
Schöne Woche wünscht
Günther
(Drogist)

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige