Hallo, ich suche einen Rat, wie ich Daten aus 10 gleichartigen Excel-Tabellen, die eigentlich zusammen gehöre, in eine xlsx-Datei übernehmen kann, so dass ich nur noch eine große Datei habe. Es ist ziemlich aufwendig, alles per Strg.C + Strg. V einzufügen bzw. mir fehlt die Kenntnis, wie es einfacher gehen kann. Danke schon mal für eure Hilfe.
Hallo,
Zieldatei oeffnen,
von den Quelldaten ein Tabellenblatt (unten am Reiter) markieren, kopieren, in Datei (in demselben Fenster Name Zieldatei waehlen).
So nacheinander die anderen Tabellenblaetter oeffnen und in dieselbe Zieldatei kopieren.
Zieldatei speichern.
Mit xls oder xlsx hat das nichts zu tun, geht in beiden Faellen gleich.
Gruss Helmut
Hallo Helmut, ich glaube, da habe ich mich falsch ausgedrückt: Die 10 xls-Dateien sind voll, d.h. jeweils 1 Tabellenblatt ist voll, sie wurden in Excel 2003 erstellt und gespeichert. Die Datensätze gehören alle zusammen, mussten aber gesplittet werden, da Excel 2003 nicht so viele Datensätze aufnehmen kann. Es handelt sich insgesamt um ca. 300.000 Datensätze. Ein Tabellenblatt in Excel 2007 (was ich jetzt nutze)kann erheblich mehr Zeilen aufnehmen als im alten Excel.
Jetzt möchte ich, dass zusammen kommt, was zusammen gehört
, also alles in ein Datenblatt. Das würde mir die Arbeit erheblich erleichtern, z.B. beim filtern, dann muss man nicht in 10 verschiedenen Dateien jeweils einzeln filtern. Vielleicht versteht man ja jetzt, was ich meine!?!?
Hallo Helmut, ich glaube, da habe ich mich falsch ausgedrückt:
Die 10 xls-Dateien sind voll, d.h. jeweils 1 Tabellenblatt ist
voll, sie wurden in Excel 2003 erstellt und gespeichert. Die
Datensätze gehören alle zusammen, mussten aber gesplittet
werden, da Excel 2003 nicht so viele Datensätze aufnehmen
kann. Es handelt sich insgesamt um ca. 300.000 Datensätze. Ein
Tabellenblatt in Excel 2007 (was ich jetzt nutze)kann
erheblich mehr Zeilen aufnehmen als im alten Excel.
Jetzt möchte ich, dass zusammen kommt, was zusammen gehört-), also alles in ein Datenblatt. Das würde mir die Arbeit
erheblich erleichtern, z.B. beim filtern, dann muss man nicht
in 10 verschiedenen Dateien jeweils einzeln filtern.
Hallo Ansamaro,
sicher kann man dir mit Formeln helfen oder mit Vba aber in der zeit wo du hier anfragst und auch die zeit um deine Beiträge zu stellen, seit 13:20 wäre doch das neue Datenblatt schon lange fertig wenn du da 10 mal was einfügst.!?
Sprich, wenn du jetzt loslegst hast du das in 15 min erledigt.
Habe ich was falsch verstanden?
Gruß
Reinhard
Hallo Reinhard,wahrscheinlich hast du Recht. Ich habe aber gehört, dass es eine einfache Möglichkeit geben soll, die Daten in Excel 2007 zu „importieren“…, habe da leider nur im passenden Moment nicht nachgehakt und finde auch nichts. Da ich häufiger mit solche großen Datenbeständen aus xls zu tun habe, hätte ich es gerne gewußt. Also dann, sorry, dass ich gefragt habe.
Hallo Ansamoro,
jetzt schmoll bitte nicht gleich rum, ich bin gar nicht so böse wie es scheint 
Wie es jetzt erscheinst baruchst du eine Lösung für mehrmalige Benutzung. Das ist was ganz anderes als eine Lösung zu erarbeiten für eine einmalige Sache.
Dann sag mal an, stehen die 10 dateien alle in einem Verzeichnis? Und nur die 10? Wenn mehr dateien, wodran erkennt man die 10 dateien? Haben sie „wilde“ Dateinamen oder im Dateinamen einen Index?
Gruß
Reinhard
Hallo Reinhard,
ich habe mit Daten zu tun, die in eine Datenbank eingelesen werden und zur Analyse in Excel 2003 exportieren werden können. Frag mich nicht weshalb, man hat mir gesagt, dass funktioniert bisher nur ins alte Excel. Also erfolgt der Export automatisch in so viele xls-Dateien, bis alle Datensätze untergebracht worden sind. Ich muss die Daten analysieren bzw. nach bestimmten Kriterien filtern. Dafür wäre es natürlich sehr hilfreich, wenn so viel wie möglich Datensätze in einer Datei wären.
Ja, die Daten stehen alle in einem Verzeichnis. Der Name wird automatisch vergeben, ist bei allen Dateien gleich bis auf die Endungen
Die Lösung, wenn es denn eine gibt, sollte einfach sein, da ich nicht sooo fit bin, also ein relativer PC-Laie
. Ansonsten wäre es vielleicht wirklich sinnvoller, jeweile mit kopieren und einfügen zu arbeiten.
Nochmals danke!
ansamaro
Ja, die Daten stehen alle in einem Verzeichnis. Der Name wird
automatisch vergeben, ist bei allen Dateien gleich bis auf die
Endungen
Die Lösung, wenn es denn eine gibt, sollte einfach sein, da
ich nicht sooo fit bin, also ein relativer PC-Laie.
Ansonsten wäre es vielleicht wirklich sinnvoller, jeweile mit
kopieren und einfügen zu arbeiten.
Nochmals danke!
Hallo Ansamaro,
du hast leider die Fragen nicht ausreichend beantwortet.
Der nachfolgende Code liest deshalb alle xls-Dateien in einem Ordner ein.
Alt+F11, Einfügen—Modul, Code reinkopieren, ggfs. abändern, Editor schließen.
Aufruf des makros Einlesen in Excel, Alt+F8, das Makro ausführen lassen.
Abändern mußt du sicherlich den Pfad zu den Dateien, im Code bislang c:\test.
Gruß
Reinhard
Option Explicit
Sub Einlesen()
Dim F, fs, fo, WB, wks1 As Worksheet, Zei1 As Long, Zei2 As Long
On Error GoTo hell
Application.ScreenUpdating = False
Set fs = CreateObject("Scripting.FileSystemObject")
Set wks1 = ThisWorkbook.Worksheets("Tabelle1")
Const Pfad As String = "C:\test"
Set fo = fs.GetFolder(Pfad)
For Each F In fo.Files
If fs.GetExtensionName(F.Name) = "xls" Then
Zei1 = wks1.UsedRange.SpecialCells(xlCellTypeLastCell).Row + 1
If Zei1 = 2 Then Zei1 = 1
Set WB = Workbooks.Open(Pfad & "\" & F.Name)
With WB.Worksheets(1)
Zei2 = .UsedRange.SpecialCells(xlCellTypeLastCell).Row
.Rows("1:" & Zei2).Copy Destination:=wks1.Cells(Zei1, 1)
End With
WB.Close SaveChanges:=False
End If
Next F
hell:
Application.ScreenUpdating = True
If Err.Number 0 Then MsgBox Err.Number & vbCr & Err.Description
End Sub
Hallo Reinhard,
hat super geklappt
, danke dir ganz herzlich dafür, das erleichtert mir meine Arbeit ungemein!!!
Gruß ansamaro (Marianne)