Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1456to1460
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

VBA: Array in eine einzelne Zelle schreiben

VBA: Array in eine einzelne Zelle schreiben
20.11.2015 09:58:15
Alex
Hallo,
Ich habe folgendes Problem. Ich lese einen String z.b. "LL501|LL502|LL503" aus.
Danach splitte ich diesen an den | .
Nun habe ich ja ein Array in dem LL501, LL502, LL503 steht.
Nun würde ich dieses gerne in eine Zelle Schreiben.
Sheets(1).Cells(16, 3).Value = aMeinArray(i)
Bekomme ich einen Laufzeitfehler 9: "Index außerhalb des gültigen Bereichs"
Wenn ich das ganze in einer For Schleife mache funktioniert das Programm, allerdings bekomme ich nur den letzten Wert, in diesem Fall LL503, in die Zelle geschrieben.
Gibt es eine Möglichkeit das gesamte Array in die Zelle zu schreiben? Oder eine Möglichkeit Werte in eine Zelle hinzuzufügen? Bonus wäre es die Einträge mit Zeilenumbrüchen zu haben.. also das in Zelle 16C am Ende:
"LL501
LL502
LL503"
steht
Über Hilfe würde ich mich sehr freuen :)
mit freundlichen Grüßen
Alex

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA: Array in eine einzelne Zelle schreiben
20.11.2015 10:02:46
Rudi
Hallo,
dann musst du es wieder zu einem String verketten.
Sheets(1).Cells(16, 3).Value = Join(aMeinArray, vbLF)
Gruß
Rudi

AW: VBA: Array in eine einzelne Zelle schreiben
20.11.2015 10:31:27
Alex
Funktioniert top :)
Super vielen Dank für die schnelle Antwort!
Mir fällt gerade ein Anschluss Problem auf.. ich müsste dem Array jetzt noch einen Wert hinzufügen. Finde aber den Befehl dazu nicht. Ich arbeite gerade das erste mal mit Arrays =/
Falls da noch wer eben Zeit hätte wäre das super :)
Gruß
Alex

du brauchst kein Array
20.11.2015 10:32:47
Tino
Hallo,
du brauchst kein Array, ersetze einfach das Zeichen durch einen Zeilenumbruch.
Sheets(1).Cells(16, 3).Value = Replace("LL501|LL502|LL503", "|", vbLf)
Gruß Tino

Anzeige
AW: du brauchst kein Array
20.11.2015 11:44:51
Alex
Oh Stimmt dieser Teil geht ohne Array wesentlich leichter. Danke :)
Jetzt habe ich aber eine Schleife in der ich aus einer Access Datenbank mehrere Werte auslese (unterschiedliche viele zwischen 1 und 6). Ich gehe die Datenbank bzw. das Recordset mit einer Schleife durch und immer wenn ich etwas finde, dass in das Feld gehört würde ich das ganze gerne in ein Array schreiben und wenn ich durch das Recordset durch bin, dann würde ich gerne das gesamte Array in die Zelle schreiben.
Alternativ würde es auch gehen, dass immer wenn ich einen Wert finde diesen direkt in die Zelle schreibe und wenn ich einen weiteren Wert finde diesen ergänze und so weiter.
Hat da jemand eine Idee?
Vielen Dank für jegliche Hilfe :)
mit freundlichen Grüßen
Alex

Anzeige
AW: du brauchst kein Array
20.11.2015 12:02:33
Rudi
Hallo,
kannst du direkt mit einem String machen
Schema:
For i=1 to AnzahlRecordset
if passt then
sTmp=sTmp & vbLF & Record(i)
end if
next i
Zelle=mid(sTmp,2)'erstes vbLF entfernen
Gruß
Rudi

AW: du brauchst kein Array
20.11.2015 12:32:14
Alex
Danke Rudi :)
Ich wusste nicht, dass man einen String so leicht erweitern kann. Das hilft enorm bei einigen Problemen!

177 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige