Aktuell kann es Probleme bei der Anmeldung mit dem Chrome oder Edge Browser geben. Ihr müsstet in die Einstellungen des Browsers gehen und Cache, Cookies und sofern vorhanden, gespeicherte Passwörter vom CEF löschen oder alternativ auf einen anderen Browser ausweichen. Ursache sind vermutlich kürzliche Browserupdates. x

Wie komme ich an die einzelnen Array Elemente heran?
#1
Hallo,

habe folgenden Code-Schnipsel:

Sub ArrayList_Methoden()

Dim arList As ArrayList
Set arList = New ArrayList
arList.Add (Range("I1:I10"))

Debug.Print arList.Item  ???? ' Wie komme ich an die einzelnen Elemente dran?

End Sub

Ich kann im Lokal-Fenster bei der Einzelschritt-Compilierung mit der F8 Taste sehen,
dass im Array List die Elemente abgespeichert wurden.

Aber wie komme ich dran?
Top
#2
Hallo,

in dem du die einzelnen Elemente ansprichst, die du habwen willst, z.B. arList(3, 5) - bedeutet Elemente das 3. Element in der 5. Spalte, sofern das Array nicht 0-Basiert ist, sonst wäre es das 4. Element in der 6. Spalte.
96 
Gruß Günter
aus der Helden-, Messe-, Musik-, Buch-, Universitäts- und Autostadt Leipzig
[-] Folgende(r) 1 Nutzer sagt Danke an Glausius für diesen Beitrag:
  • Alison
Top
#3
Hallo,

ArrayList ist kein Standardobjekt von VBA. Solltest Du die Bibliothek mscorlib.dll eingebunden haben (über Extras / Verweise prüfen),
dann führt das Einlesen einer Range dazu, dass die quasi dort 1 zu 1 abgelegt wird. Der Code wäre dann so ...

Code:
ub ArrayList_Methoden()

  Dim arList As ArrayList
  Set arList = New ArrayList
  
  arList.Add ActiveSheet.Range("I1:I10")
  
  Debug.Print arList.Item(0)(1, 1)
  Debug.Print arList.Item(0)(2, 1)
  Debug.Print arList.Item(0)(3, 1)
  Debug.Print arList.Item(0)(4, 1)
  Debug.Print arList.Item(0)(5, 1)
  
End Sub

Gruß
Microsoft Excel Expert · Microsoft Most Valuable Professional (MVP) :: 2011-2019 & 2020-2022 :: 10 Awards
https://de.excel-translator.de/translator :: Online Excel-Formel-Übersetzer :: Funktionen :: Fehlerwerte :: Argumente :: Tabellenbezeichner
[-] Folgende(r) 1 Nutzer sagt Danke an maninweb für diesen Beitrag:
  • Alison
Top
#4
Hallo,

ich hatte zu "hoch" gezählt, statt eine 1 eine Null zuerst, deshalb scheiterten meinen ganzen Versuche. Danke!

Auch interessant (zumindest für mich) , es macht wohl dann doch noch einen Unterschied, ob

man nur Range(Bereich) nimmt oder ActiveSheet.Range(Bereich) (siehe Lokalfenster beiim Einzelschrittmodus)

Wieder was gelernt.
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste