Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Array ab A3 füllen

Forumthread: Array ab A3 füllen

Array ab A3 füllen
11.02.2008 18:41:00
Wolfgang
Hallo,
der untenstehende Code stammt aus einem UF. Er bewirkt wohl, dass die Spalten A:G in einem Listfeld angzeigt werden. Wie ist der Code zu verändern, damit aus dem Array erst ab A3 die Daten im Listfeld angezeigt werden? Danke schon jetzt für die Rückmeldungen.
Gruß - Wolfgang

Public Sub Array_fuellen()
Dim lLetzte   As Long     ' letzte belegte Zeile in Spalte A
Dim lZeile    As Long     ' For/Next Zeilen-Zähler
Dim lIndex    As Long     ' der Zeilen-Index im Array
Dim iSpalte   As Integer  ' der Spalten-Index im Array
With Worksheets("Stand")
lLetzte = .Cells(Rows.Count, 1).End(xlUp).Row
For lZeile = 2 To lLetzte
'If Not IsEmpty(Cells(lZeile, 8)) Then ' Spalte H nicht leer?
lIndex = lIndex + 1
ReDim Preserve aTmp(1 To 8, 1 To lIndex)
'     um die Formatierungen der Tabellenblatt-Spalten zu übernehmen,     '
'     darf nicht .Value, sondern es muss .Text verwendet werden.         '
For iSpalte = 1 To 7
aTmp(iSpalte, lIndex) = Cells(lZeile, iSpalte).Text
aTmp(8, lIndex) = lZeile
Next iSpalte
'End If
Next lZeile
End With
End Sub


Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Array ab A3 füllen
11.02.2008 19:11:00
Jan
Hi,
For lZeile = 3 To lLetzte
mfg Jan

Danke Jan, das war's genau.
11.02.2008 19:26:22
Wolfgang
Hallo Jan,
herzlichen Dank für die Rückmeldung. Das läuft super.
Gruß - Wolfgang

AW: Array ab A3 füllen
11.02.2008 19:37:43
Erich
Hallo Wolfgang,
so vermeidest du das ständige "Redim Preserve":
("aTmp(8, lZeile - 2) = lZeile" muss auch nicht für jede Spalte,
sondern nur 1mal pro Zeile belegt werden.)

Public Sub Array_fuellen()
Dim lLetzte   As Long     ' letzte belegte Zeile in Spalte A
Dim lZeile    As Long     ' For/Next Zeilen-Zähler
Dim iSpalte   As Integer  ' der Spalten-Index im Array
With Worksheets("Stand")
lLetzte = .Cells(Rows.Count, 1).End(xlUp).Row
ReDim aTmp(1 To 8, 1 To lLetzte - 2)
For lZeile = 3 To lLetzte
For iSpalte = 1 To 7
'     um die Formatierungen der Tabellenblatt-Spalten zu übernehmen,     '
'     darf nicht .Value, sondern es muss .Text verwendet werden.         '
aTmp(iSpalte, lZeile - 2) = Cells(lZeile, iSpalte).Text
Next iSpalte
aTmp(8, lZeile - 2) = lZeile
Next lZeile
End With
End Sub

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
;

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