Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
576to580
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
576to580
576to580
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

auseinander liegende Spalten in ein Array bringen

auseinander liegende Spalten in ein Array bringen
28.02.2005 16:35:34
Peter
Hallo Excel Experten,
wie bekomme ich zwei auseinander liegende Spalten in ein Array gepackt?
Hier mein Versuch:


Sub LiBo_fuellen()
Dim PfaDat   As Object
Dim Pfad     As String
Dim Datei    As String
Dim arrWerte As Variant
   Application.ScreenUpdating = False
   
   Pfad = ThisWorkbook.Path
   Datei = "Mitarbeiter.xls"
   
   Sheets("Tabelle5").ListBox1.ColumnWidths = "5,5 cm; 6,5 cm"
   Sheets("Tabelle5").ListBox1.Clear
   
   Set PfaDat = GetObject(Pfad & "\" & Datei)
   
   arrWerte = PfaDat.Sheets(1).Range("A1:A20", "C1:C20")  ' <=== Problem !!!
   
   MsgBox arrWerte(1, 1) & " / " & arrWerte(1, 2) & vbLf & _
          arrWerte(2, 1) & " / " & arrWerte(2, 2)
   Sheets("Tabelle5").ListBox1.List = arrWerte
   PfaDat.Close False
   Set PfaDat = Nothing
          
   Application.ScreenUpdating = True
          
End Sub


Ich möchte unbedingt eine Lösung mit Array verwirklichen.
Gruß Peter

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: auseinander liegende Spalten in ein Array brin
bst
Abend Peter,
tu's per Hand. Einen anderen Weg kenne ich nicht.
cu, Bernd
--
Option Explicit

Sub Bla()
Dim arrwerte() As Variant
Dim arrneu() As Variant
Dim i As Integer
arrwerte = Range("A1:C20")
ReDim arrneu(1 To 20, 1 To 2)
For i = 1 To 20
arrneu(i, 1) = arrwerte(i, 1)
arrneu(i, 2) = arrwerte(i, 3)
Next
Range("E1:F20") = arrneu
End Sub

AW: auseinander liegende Spalten in ein Array brin
28.02.2005 22:10:30
Peter
Hallo Bernd,
da läuft leider nicht.
Der Array ist zweidimensional und kann offensichtlich Range("A1:C20") nicht verkraften, weil das drei Spalten sind. Es kommt Laufzeitfehler '13': Typen unverträglich als Fehlermeldung.
Deshalb suche ich ja die Konzentration auf meine beiden Spalten A1:A20 und C1:C20.
Danke trotzdem, Gruß Peter
Anzeige
AW: auseinander liegende Spalten in ein Array brin
01.03.2005 10:00:57
bst
Morgen Peter,
sollte nun schon gehen.
Der Dim war allerdings etwas unglücklich. Ohne den () klappt's auch wenn vor dem Range noch etwas steht. Warum dem so ist weiß ich nicht.
HTH, Bernd
--

Sub LiBo_fuellen()
Dim arrWerte As Variant
Dim arrNeu As Variant
Dim i As Integer
Worksheets("Tabelle2").Activate ' NUR ZUM TEST !!!
arrWerte = Worksheets(1).Range("A1:C20")
ReDim arrNeu(LBound(arrWerte) To UBound(arrWerte), 1 To 2)
For i = LBound(arrWerte) To UBound(arrWerte)
arrNeu(i, 1) = arrWerte(i, 1)
arrNeu(i, 2) = arrWerte(i, 3)
Next i
With Sheets("Tabelle5").ListBox1
.ColumnCount = 2
.ColumnWidths = "5,5 cm; 6,5 cm"
.Clear
.List = arrNeu
End With
End Sub

Anzeige
AW: auseinander liegende Spalten in ein Array brin
01.03.2005 10:30:35
Peter
Hallo Bernd,
so funktioniert es ganz gut. Es hakt zwar noch beim Einfügen in "Tabelle5", geht dann aber seltsamerweise mit Einzelschritt (F8) über den Fehler hinweg. Beim 2. Versuch wird die geschlossene Datei gar nicht wieder richtig angefasst, aber das sind Dinge, die ich wohl noch finden werde.
Danke also und Gruß, Peter

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige