Microsoft Excel

Herbers Excel/VBA-Archiv

Spalten aus mehreren Dateien in neue Datei

Betrifft: Spalten aus mehreren Dateien in neue Datei von: Esther
Geschrieben am: 26.08.2004 17:09:15

Hallo

Ich habe leider von VBA gar keine Ahnung, ich hoffe jemand kann mir mit meinem Problem helfen:
Ich habe jede Woche 10 Excel Dateien, aus denen möchte ich jeweils die Spalte E kopieren und diese 10 Spalten dann in eine neue Datei kopieren = Spalten A bis J
Das Gleiche dann noch mit den 10 Spalten L, die kämen dann in der neuen Datei in die Spalten H bis Q.
Kann man das irgendwie automatisieren?
Danke für eure Hilfe!

  


Betrifft: AW: Spalten aus mehreren Dateien in neue Datei von: Reinhard
Geschrieben am: 26.08.2004 17:26:31

Hallo Esther,
wie heissen denn die 10 Dateien? Haben die wöchentlich neue Namen oder heissen sie immer gleich, haben also nur neue Daten?
Stehen sie im gleichen Verzeichnis wie die Mutterdatei die das per VBA erledigen soll, wenn nein fehlt der Verzeichnisname wo die 10 Dateien stehen.
Gut wäre es wenn die 10 Dateien alleine in einem eigenen immer gleichen Verzeichnis stehen, dann musst du VBA nicht mitteilen wie sie heissen, sofern ihr Name wöchentlich wechselt.
Wie soll die neue Datei jeweils heissen?
Gruß
Reinhard


  


Betrifft: AW: Spalten aus mehreren Dateien in neue Datei von: Esther
Geschrieben am: 27.08.2004 11:31:19

Hallo Reinhard
Bin ich froh dass sich jemand gemeldet hat!
Also, die 10 Dateien haben jede Woche einen neuen Namen, und werden immer zusammen im gleichen Verzeichniss abgelegt, sonst ist keine andere Datei drin. Im gleichen Verzeichniss kann auch die neue Datei mit der Zusammenfassung sein, der Namen ist eigentlich egal, z.B. Woche 36.xls oder so
Gruss und Danke
Esther


  


Betrifft: AW: Spalten aus mehreren Dateien in neue Datei von: Reinhard
Geschrieben am: 27.08.2004 14:50:18

Hallo Esther,
bei Antworten kann man rechts "Frage noch offen" ankreuzen, das erhöht dieChancen dass die Frage beachtet wird.
Leider weiss ich nicht wann ich zeit habe, aber ich hoffe schon dass ein anderer dein Problem bis dahin gelöst hat.
Gruß
Reinhard


  


Betrifft: AW: Spalten aus mehreren Dateien in neue Datei von: Esther
Geschrieben am: 27.08.2004 19:29:24

Hallo Reinhard
Danke für deinen Tipp. Ich hoffe es findet sich noch jemand, der mein Problem lösen kann. Sonst warte ich geduldig, bis du mal Zeit hast ; )
Gruss
Esther


  


Betrifft: AW: Spalten aus mehreren Dateien in neue Datei von: Roland Hochhäuser
Geschrieben am: 29.08.2004 11:55:38

Hallo Esther,

versuch mal folgendes:
schaffe die 10 Dateien in ein Extra-Verzeichnis. In das gleiche Verzeichnis speichere eine Datei mit dem Namen Zusammenfassung.xls ab. Diese Datei impfst du mit folgendem Makro:
Sub DateienEinlesen()
Dim ws As Worksheet, datSuche As Object, i As Byte
Set ws = Workbooks("Zusammenfassung.xls").Worksheets("Tabelle1")
Set datSuche = Application.FileSearch
With Application
    .AskToUpdateLinks = False
    .DisplayAlerts = False
    .ScreenUpdating = False
End With
With datSuche
    .NewSearch
    .LookIn = ThisWorkbook.Path
    .Filename = "*.xls"
        If .Execute > 0 Then
            For i = 1 To .FoundFiles.Count - 1
                Workbooks.Open .FoundFiles(i)
                Columns("E:E").Copy ws.Columns(i)
                Columns("L:L").Copy ws.Columns(i + 11)
                ActiveWorkbook.Close
            Next i
        End If
End With
Set datSuche = Nothing
Set ws = Nothing
With Application
    .AskToUpdateLinks = True
    .DisplayAlerts = True
    .ScreenUpdating = True
End With
End Sub


Wichtig: Es dürfen sich sonst keine weiteren Exceldateien im Verzeichnis befinden. Nun bitte zuerst alle anderen Excel-Dateien schließen und das Makro aufrufen. Es kopiert die gewünschten Spalten jeweils aus Tabellenblatt 1 der Arbeitsmappen.
Gruß
Roland


  


Betrifft: Schreibfehler von: Roland Hochhäuser
Geschrieben am: 29.08.2004 12:00:57

es sollte ja in Spalte K losgehen:
Sub DateienEinlesen()
Dim ws As Worksheet, datSuche As Object, i As Byte
Set ws = Workbooks("Zusammenfassung.xls").Worksheets("Tabelle1")
Set datSuche = Application.FileSearch
With Application
    .AskToUpdateLinks = False
    .DisplayAlerts = False
    .ScreenUpdating = False
End With
With datSuche
    .NewSearch
    .LookIn = ThisWorkbook.Path
    .Filename = "*.xls"
        If .Execute > 0 Then
            For i = 1 To .FoundFiles.Count - 1
                Workbooks.Open .FoundFiles(i)
                Columns("E:E").Copy ws.Columns(i)
                Columns("L:L").Copy ws.Columns(i + 10)
                ActiveWorkbook.Close
            Next i
        End If
End With
Set datSuche = Nothing
Set ws = Nothing
With Application
    .AskToUpdateLinks = True
    .DisplayAlerts = True
    .ScreenUpdating = True
End With
End Sub



  


Betrifft: AW: Schreibfehler von: Esther
Geschrieben am: 29.08.2004 20:26:47

Hallo Roland
Danke für deine Hilfe! Ich werde gleich morgen die Sache im Büro "in Angriff" nehmen.
Melde mich dann mit dem Ergebniss.
Gruss
Esther


 

Beiträge aus den Excel-Beispielen zum Thema "Spalten aus mehreren Dateien in neue Datei"