Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

bestimmte Zeile aus mehreren Dateien in eine Tabelle kopieren
#1
Hallo zusammen,

da es in letzter Zeit immer mal wieder zu mehrstündigen Suchaktionen kam, habe ich entschlossen mich hier anzumelden.


Vorweg: VBA = keinerlei Erfahrung/Ahnung, trotzdem versuche ich mit veröffentlichten Makros meine Probleme zu lösen und an bestimmten Stellen durch Ausprobieren an mein Ziel zu gelangen :19:
Da ich aber in letzter Zeit öfter mal VBA benutzen musste, versuche ich hier mein Wissen zu erweitern und hoffe auf Hilfe und Tipps.

Zu meinem Problem: Eigentlich recht Simpel, ich habe x Dateien in einem Verzeichnis, alle fortlaufend Bsp.: Kunde0002, Kunde0003, Kunde0004....
Jede Datei besteht nur aus einer Zeile A1:K1, diese möchte ich alle in einer Datei untereinander aufgelistet haben.
Am besten in einer Tabelle zum Filtern. Zeile A1:K1 sind Spaltenüberschriften (Kunde, Ort, PLZ, Info...), sprich ab Zeile 2 sollen Einträge folgen.

Ich habe mal mit dem Rekorder begonnen:

Code:
Sub Kopieren()
'
' Kopieren Makro
'
   Workbooks.Open Filename:= _
       "T:\90 - Ablage\Excel\Kunde0002.xlsx"
   Rows("1:1").Select
   Selection.Copy
   Windows("Hauptdatei.xlsx").Activate
   Range("A2").Select
   ActiveSheet.Paste
   Workbooks.Open Filename:= _
    "T:\90 - Ablage\Excel\Kunde0003.xlsx"
   Rows("1:1").Select
   Application.CutCopyMode = False
   Selection.Copy
   Windows("Hauptdatei.xlsx").Activate
   Range("A3").Select
   ActiveSheet.Paste
   Workbooks.Open Filename:= _
    "T:\90 - Ablage\Excel\Kunde0004.xlsx"
   Rows("1:1").Select
   Application.CutCopyMode = False
   Selection.Copy
   Windows("Hauptdatei.xlsx").Activate
   Range("A4").Select
   ActiveSheet.Paste
End Sub
Wie automatisiere ich die selbstständige Auswahl der Dateien? Sprich Excel braucht keine Namen der Dateien Bsp.: 0002, 0003, 0004... sondern weiß dass ist mein Ordner, hier benutze ich jede Datei nach der nächsten.
Und wie bestimme ich nach dem Einfügen in Zeile 2 die nächste Zeile zu benutzen. Sprich immer +1 Zeile runter nach dem einfügen.
Ich brauche also eine Schleife denke ich soweit bin ich schonmal. :05:

Vielen Dank im voraus

Viele Grüße
Antworten Top
#2
Hallo Fabian,

das hier vielleicht: http://www.clever-excel-forum.de/thread-...l#pid54482

Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • Fabian1208
Antworten Top
#3
Hallo

unter der Voraussetzung, dass das Tabellenblatt der einzelnen
Kundendateien "Tabelle1" heißt
könnte es so aussehen
ungetestet aus der Datei "Hauptdatei" aus dem Zielblatt zu starten

Code:
Sub kopieren()
   Dim oQuelle As Object
   Dim strDatei As String
   Dim strPfad As String
   Dim lngZiel As Long
   Application.ScreenUpdating = False
   strPfad = "T:\90 - Ablage\Excel\"
   lngZiel = 2
   strDatei = Dir(CStr(strPfad & "*.xl*")) 'Alle Excel Dateien
   Do While strDatei <> ""
       Set oQuelle = Workbooks.Open(strPfad & strDatei, False, True)
       Cells(lngZiel, 1).Resize(1, 11).Value = _
               oQuelle.Sheets("Tabelle1").Cells(1, 1).Resize(1, 11).Value
       oQuelle.Close False
       strDatei = Dir()
       lngZiel = lngZiel + 1
   Loop
   Application.ScreenUpdating = True
   Set oQuelle = Nothing
End Sub


MfG Tom
[-] Folgende(r) 1 Nutzer sagt Danke an Crazy Tom für diesen Beitrag:
  • Fabian1208
Antworten Top
#4
Vielen Dank euch beiden für die schnellen Antworten !

 @Uwe da gibts bestimmt was, was mir in Zukunft helfen wird, vorallem auch mit den Erklärungen am Rand !

@Tom Danke für die Vorlage, habe sie getestet und sie funktioniert!


Noch eine angenehme Woche :)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste