AW: Natürlich stellt sich auch hier wieder mal ...
13.08.2014 23:33:18
Ewald
Hallo Luc,
eigentlich ist das klar, sie hat ja Value geschrieben. Aber auch .Text wäre kein Problem ist ja nur eine Frage des Einlesens. Value kannst du komplett übergeben, .Text mußt du abklappern.
Das man unbedingt spaltenweise einlesen muß halte ich für fraglich.Da du das Array ja mit lngzeile,intspalte dimensionieren mußt, würde bei 2 Spalten auch intspalte für Spalte B und intspalte-1 für Spalte A reichen.
Bei spaltenweise einlesen müsste der zeilenwert für Spalte B gewünschte Zeile + lngzeile / 2 sein.
Hier mal ein Beispiel mit einem Bereich der per Namen definiert ist. In SpalteA sind Vornamen in SpalteB die entsprechenden Nachnamen.
Sub ArrayNames()
Dim Daten() As Variant
Dim lngZeile As Long, lngLZ As Long
Dim intSpalte As Integer
Dim rng As Range
Dim str
Dim str1
Dim i
'Names "myrange" = Range("A1:B300")
lngLZ = Range("myrange").Rows.Count
intSpalte = Range("myrange").Columns.Count
ReDim Daten(lngLZ, intSpalte)
Set rng = Range("myrange")
Daten = rng
MsgBox Daten(5, intSpalte) 'Nachnamen
MsgBox Daten(5, intSpalte - 1) 'Vornamen
MsgBox Daten(5, intSpalte - 1) & " " & Daten(5, intSpalte) 'Vornamen und Nachnamen
End Sub
Gruß Ewald