Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: mehrere Zeilen und Spalten in ein Array

mehrere Zeilen und Spalten in ein Array
08.10.2015 16:55:56
SteffenS
Hallo Zusammen,
ich beschäftige mich derzeit (zum ersten Mal) mit Arrays und möchte gern in einem Array Werte aus eine Tabelle mit 10 Zeilen und 4 Spalten in ein Array einlesen und später anhand der ersten Spalte Ergebnisse der anderen 3 Spalten ausgeben.
Wie gehe ich dies an, da ich nicht weiß wieviele Dimensionen ich benötige und wie ich diese befülle.
Vielen Dank Euch schon mal.
VG Steffen Schmerler

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: mehrere Zeilen und Spalten in ein Array
08.10.2015 17:00:44
Daniel
Hi
wenn du Werte aus einer Tabelle in ein Array lesen willst, brauchst du immer 2 Dimensionen.
1. Dim.: Zeilen
2. Dim.: Spalten
am einfachsten ist es, wenn die Zellwerte 1:1 ins Array übertragen werden sollen.
dann dimenstionerst du das aufnehmende Array einfach als Variant und VBA erstellt daraus automatisch beim befüllen ein passendes 2-Dimensionales Array mit dem StartIndex 1:

dim myArray
myArray = Range("A1").Resize(10, 4).Value
Gruß Daniel

Anzeige
AW: mehrere Zeilen und Spalten in ein Array
08.10.2015 17:29:13
SteffenS
Hallo,
danke für die Antwort.
Und wie mache ich manuell, z.B.:
Spalte 1 Spalte 2 Spalte 3 Spalte 4
12 ab 12d 34e
34 bf 13f 67t
Danke nochmal.
VG Steffen

AW: mehrere Zeilen und Spalten in ein Array
08.10.2015 17:36:15
Daniel
Hi
dim arr(1 to 10, 1 to 4)
arr(1, 1) = 12
arr(1, 2) = "ab"
arr(1, 3) = "12d"
arr(1, 4) = "34e"
arr(2, 1) = 34
arr(2, 2) = "bf"
arr(2, 3) = "13f"
arr(2, 4) = "67t"

Gruß Daniel

Anzeige
AW: mehrere Zeilen und Spalten in ein Array
08.10.2015 22:27:50
SteffenS
Hall Zusammen,
danke für die Hilfe. Mit dem Tipp hat es funktioniert.
VG Steffen

Du solltest zuerst über den Inhalt entscheiden,...
08.10.2015 17:45:11
Luc:-?
…Steffen;
soll das Array ZellObjektBezüge oder nur Werte enthalten? Nur Werte müssen dann erst noch erzeugt wdn.
Die nächste Entscheidung wäre, wdn auch einzelne Spalten oder eher Zeilen aus dem Array benötigt.
Ist letzteres der Fall, wäre eine Entscheidung für ein klassisches, 2dimensionales VBA-Array falsch und der andere Typ, Variant mit Array zu bevorzugen (Vektor, dessen Elemente ebenfalls aus gegen­gerich­teten Vektoren bestehen). So ein Array muss dann zeilen- bzw spaltenweise aus einem Bereich aufgebaut wdn.
Gruß, Luc :-?
Besser informiert mit …
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Werte aus mehreren Zeilen und Spalten in ein Array einlesen


Schritt-für-Schritt-Anleitung

Um Werte aus mehreren Zeilen und Spalten in ein Array in Excel VBA einzulesen, folge diesen Schritten:

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Erstelle ein neues Modul: Klicke mit der rechten Maustaste auf „VBAProject (deinWorkbookName)“ und wähle „Einfügen > Modul“.

  3. Deklariere das Array: Du kannst ein 2-dimensionales Array deklarieren, um die Werte zu speichern. Verwende dazu den folgenden Code:

    Dim myArray As Variant
    myArray = Range("A1").Resize(10, 4).Value
  4. Manuelle Befüllung des Arrays: Falls du die Werte manuell eingeben möchtest, kannst du dies so tun:

    Dim arr(1 To 10, 1 To 4) As Variant
    arr(1, 1) = 12
    arr(1, 2) = "ab"
    arr(1, 3) = "12d"
    arr(1, 4) = "34e"
    arr(2, 1) = 34
    arr(2, 2) = "bf"
    arr(2, 3) = "13f"
    arr(2, 4) = "67t"
  5. Verwenden des Arrays: Du kannst nun die Werte aus dem Array für weitere Berechnungen oder Ausgaben nutzen.


Häufige Fehler und Lösungen

  • Fehler: „Typ nicht definiert“

    • Lösung: Stelle sicher, dass du den richtigen Datentyp für dein Array verwendest. Wenn du ein Variant-Array verwendest, sollte der Code wie folgt aussehen:
    Dim myArray As Variant
  • Fehler: „Index außerhalb des gültigen Bereichs“

    • Lösung: Überprüfe die Indizes, die du verwendest, um auf das Array zuzugreifen. Achte darauf, dass du die richtigen Dimensionen verwendest.

Alternative Methoden

Wenn du die Werte aus einer Tabelle in ein Array einlesen möchtest, gibt es auch alternative Methoden:

  • Direktes Einlesen mit einer Schleife: Anstatt Resize zu verwenden, kannst du die Werte zeilenweise einlesen:

    Dim arr(1 To 10, 1 To 4) As Variant
    Dim i As Integer
    For i = 1 To 10
       arr(i, 1) = Cells(i, 1).Value
       arr(i, 2) = Cells(i, 2).Value
       arr(i, 3) = Cells(i, 3).Value
       arr(i, 4) = Cells(i, 4).Value
    Next i

Praktische Beispiele

Hier sind einige praktische Beispiele, wie du mit einem Array arbeiten kannst:

  • Werte ausgeben: Um Werte aus dem Array auszugeben, kannst du eine Schleife verwenden:

    Dim i As Integer
    For i = 1 To 10
       Debug.Print arr(i, 1) ' Gibt den Wert der ersten Spalte aus
    Next i
  • Bedingte Ausgaben: Du kannst auch Bedingungen einfügen, um nur bestimmte Werte auszugeben:

    For i = 1 To 10
       If arr(i, 1) > 20 Then
           Debug.Print arr(i, 1) ' Gibt nur Werte größer als 20 aus
       End If
    Next i

Tipps für Profis

  • Verwende Variant für Flexibilität: Wenn du nicht sicher bist, welche Datentypen deine Daten haben, ist die Verwendung des Variant-Datentyps sinnvoll.
  • Erstelle dynamische Arrays: Wenn die Größe deiner Datenquelle nicht festgelegt ist, kannst du ein dynamisches Array verwenden und es zur Laufzeit anpassen.

    Dim myArray() As Variant
    ReDim myArray(1 To 10, 1 To 4)

FAQ: Häufige Fragen

1. Wie viele Dimensionen benötigt mein Array? Du benötigst in der Regel zwei Dimensionen (Zeilen und Spalten), wenn du eine Tabelle in ein Array einlesen möchtest.

2. Was ist der Unterschied zwischen Variant und anderen Datentypen? Variant ist ein flexibler Datentyp, der verschiedene Arten von Daten (Zahlen, Texte, Arrays) speichern kann. Dies ist nützlich, wenn du nicht im Voraus weißt, welchen Datentyp du verwenden wirst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige