Herbers Excel-Forum - das Archiv

Daten aus mehreren Arbeitsmappen importieren

Bild

Betrifft: Daten aus mehreren Arbeitsmappen importieren
von: Chris

Geschrieben am: 19.04.2005 11:13:19
Hallo zusammen
ich habe folgendes Problem: ich möchte aus mehreren Arbeitsmappen Daten in eine Arbeitsmappe (import.xls) kopieren. Es handelt sich dabei um einen Fragebogen den mehrere Befragte ausgefüllt haben und die jeweils eine ID von 1 bis 20 zugewissen bekommen. Der Filename der Arbeitsmappen besteht aus einem String "kunde" und der entsprechenden ID (z.B. "kunde10.xls"). Ich habe mir gedacht, ich verwende für den Import eine Schleife, die alle Fragebogen öffnet, die entsprechenden Daten in die Arbeitsmappe import.xls kopiert und dann zum nächsten Fragebogen weitergeht. Das öffnen und kopieren der Daten klappt, ich schaffe es einfach nicht die Schleife zu schreiben, damit er mir die verschiedenen Arbeitsmappen öffnet.
Kennt jemand eine Lösung für mein Problem? Vielen Dank im Voraus
Bild

Betrifft: AW: Daten aus mehreren Arbeitsmappen importieren
von: Frank Sohn
Geschrieben am: 19.04.2005 11:19:29
Hallo,

wie wär's damit

Option Explicit

Private Sub Test()
Dim i As Long
For i = 1 To 10
MsgBox "kunde" & Format(i) & ".xls"
Next
End Sub


Gruss
Frank
Bild

Betrifft: AW: Daten aus mehreren Arbeitsmappen importieren
von: chris

Geschrieben am: 19.04.2005 12:00:12
hallo Frank
danke für deine antwort, ich versteht sie aber nicht ganz.
ich möchte mit dem befehl Workbooks.Open ("D:\excel\kunde01.xls") die arbeitsmappen "kunde01.xls" bis "kunde20.xls" nacheinander öffnen und die jeweiligen daten in meine arbeitsmappe "import.xls" kopieren.
ich benötige dazu eine schleife, die jeweils die arbeitsmappe mit der nächst höheren nummer öffnet.
ich weiss aber nicht wie ich den namen der arbeitsmappe als variable definieren kann, beispielsweise kunde[id].xls.
Bild

Betrifft: AW: Daten aus mehreren Arbeitsmappen importieren
von: Frank Sohn

Geschrieben am: 19.04.2005 12:35:13
Hallo,

ich glaub das löst das Problem!
Option Explicit

Private Sub Test()
Const Path = "D:\excel\"
Dim i As Long
Dim WorkbookName As String
For i = 1 To 20
WorkbookName = "kunde" & Format(i) & ".xls"
If i <= 9 Then WorkbookName = "kunde0" & Format(i) & ".xls"
Workbooks.Open (Path & WorkbookName)
Next i
End Sub


Gruss
Frank
 Bild
Excel-Beispiele zum Thema "Daten aus mehreren Arbeitsmappen importieren"
Druck aus mehreren Tabellenblättern auf eine Druckseite Daten von mehreren Blättern auf ein Druckblatt
Werte in mehreren Spalten sortieren Den selben Bereichsnamen in mehreren Tabellenblättern
Tabelle nach mehreren Kriterien summieren Auswahl von Zellen in mehreren Zeilen verhinden
Wert von einer Zelle zur anderen in mehreren Tabellen übernehmen Benannte Bereich aus mehreren Arbeitsmappen importieren
Filtern über VBA nach mehreren Kriterien Kosten nach mehreren Kriterien erfassen