Microsoft Excel

Herbers Excel/VBA-Archiv

Spalten aus mehreren Dateien und Ws kopieren | Herbers Excel-Forum


Betrifft: Spalten aus mehreren Dateien und Ws kopieren von: Pablo
Geschrieben am: 24.01.2010 11:08:01

Hallo,

ich bin ein totaler Excel- Rookie und stehe vor einer ohne Tricks zeitlich unlösbaren Aufgabe.

Ich habe 13 Dateien mit jeweils 14 Arbeitsmappen von denen jede 44 Spalten und 361 Zeilen hat. Ich muss nun zu Auswertungszwecken aus allen Dateien jeweils verschiedene Spalten verschiedener Arbeitsmappen in eine neue Datei zusammenfügen und zwar so, dass z.B. die Spalten A aus der Arbeitsmappe F aller Dateien in der neuen Datei wieder als Spalten (dann A bis M) in Arbeitsmappe F liegen.

Gibt es da einen Trick oder vielleicht ein Makro oder so?

Ich bin für jede Hilfe dankbar!

also danke schonmal im Voraus!

Gruß

Pablo

  

Betrifft: AW: Spalten aus mehreren Dateien und Ws kopieren von: Daniel
Geschrieben am: 24.01.2010 13:10:35

Hi

das geht prinzipiell auch mit Formeln, ohne Makro:

ich würde da so vorgehten:
1. die 13 Quelldateien in den gleichen Ordner verschieben
2. öffne die Sammeldatei und eine von den 13 Quelldateien
3. jetzt trägst du in die Zelle A1 der Sammeldatei einfach einen Fernbezug auf die Zelle A1 des Tabellenblatts F ein (geht per Mausklick). Die Formel in A1 sollte jetzt in etwa so aussehen: =[Datei1.xls]F!$A$1
4. jetzt entfernst du das Dollarzeichen vor der 1: =[Datei1.xls]F!$A1
5. du schließt die erste Quelldatei, Excel ergeänzt jetzt in der Formel automatisch den Zellbezug um den Dateipfad, dh. die Formel sieht jetzt so aus: ='C:\OrdnerX\OrdnerY\[Datei1.xls]F'!$A1
6. diese Formel kopierts du jetzt von Zelle A1 in die Zellen B1-M1
7. jetzt änderst du den Dateinamen in den Zellen B1-M1 auf die jeweilige einzulesende Datei ab
8. du kopierst die Zeile 1 und fügst sie in die Zeilen 2-361 ein (achtung, kann etwas daueren)
9. du kopierst den ganzen Zellbereich und klickst dann auf INHALTE EINFÜGEN - WERTE um die Formeln zu eleminieren.

per Makro würde ich das so machen:

1. das unten gezeigte Makro in die Sammeldatei schreiben.
2. alle 13 Quelldateien öffnen, es dürfen jetzt außer diesen und der Sammeldatei keine weiteren Dateien geöffnet sein.
3. jetzt das Makro starten:

Sub Kopieren()
Dim wb As Workbook
With ThisWorkbook.Sheets("F")
    .Cells.Clear
    For Each wb In Application.Workbooks
        If wb.Name <> ThisWorkbook.Name Then
            wb.Sheets("F").Range("A1:A361").Copy
            .Cells(1, .UsedRange.SpecialCells(xlCellTypeLastCell).Column + 1).PasteSpecial _
                    xlPasteValues
            Application.CutCopyMode = False
            wb.Saved = True
            wb.Close
        End If
    Next
End With
End Sub
Gruß, Daniel


  

Betrifft: AW: Spalten aus mehreren Dateien und Ws kopieren von: Pablo
Geschrieben am: 24.01.2010 14:06:44

Hallo Daniel,


vielen Dank schonmal für deine Hilfe. Es läuft aber noch nicht ganz. Bei dem Makro kommt die Fehlermeldung:

Laufzeitfehler 9, Index außerhalb des gültigen Bereichs

Die erste Version habe ich auch nicht hinbekommen, mit Fernbezug meinst du Rechtsklick - Bereich benennen ?
Da tut sich schon in Schritt 5 nix und A1 ist einfach wieder A1 ohne Name oder Formel oder sonstwas :(

Vielleicht ist auch die Schwierigkeit, dass über den Spalten in der ersten Zeile jeweils Bezeichnungen Stehen (z.B. Fe) und die Arbeitsblätter auch andere Namen haben. Ich habe das aber eigentlich an den entsprechenden Stellen abgeändert.

wo könnte das Problem sein?

Danke schon im Voraus!

Pablo


  

Betrifft: AW: Spalten aus mehreren Dateien und Ws kopieren von: Daniel
Geschrieben am: 24.01.2010 15:01:38

Hi

"index außerhalb des Gültigen Bereichs" deutet immer darauf hin, daß du dich beim Namen des Tabellenblatts im Makro vertippt hast.

mit fernbezug meine ich einfach, daß du in die erste Zelle ein Gleichheitszeichen eingibst und dann in der anderen Datei auf die Zelle klickst, deren Inhalt in der ersten Zelle angezeigt werden soll.
so wie sich Z.B. "=Tabelle2!A1" den wert aus einer anderen Tabelle holt, holst du dir hier den Wert aus einer anderen Datei.

Gruß, Daniel


  

Betrifft: jetzt passts von: Pablo
Geschrieben am: 24.01.2010 15:27:40

super, jetzt läufts, hatte es eigentlich mehrfach versucht, aber jetzt geht alles!


tausend dank!!!!


Beiträge aus den Excel-Beispielen zum Thema "Spalten aus mehreren Dateien und Ws kopieren"