Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
940to944
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
940to944
940to944
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zellen aus n-Zeilen und n-Dateien kopieren und in

Zellen aus n-Zeilen und n-Dateien kopieren und in
15.01.2008 16:23:17
simone
Hallo,
komme aus der Java-Fraktion und kenne mich mit VBA kaum aus, doch VBA scheint für diese Lösung geeigneter zu sein.
Ich möchte folgendes lösen:
(Info: xls-Dateien haben unterschiedlich viele Zeilen. Spalten bleiben konstant)
1. Via Auswahlfenster ein Ordner auswählen
2. Ordnerauswahl in Variable speichern
3. bestimmte Zellen in der Zeile/Zeilen sollen aus allen xls-Dateien in dem Ordner (und evtl. Unterordner) kopiert werden und...
4. in eine neu generierte Datei hintereinander eingefügt werden
Dachte das sei "mal eben" programmiert, aber ist nicht so trivial wie ich dachte.
Gibt es vielleicht Anregungen oder Lösungen, damit ich das Rad nicht neu erfinden brauche?
Thx.
Simone

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellen aus n-Zeilen und n-Dateien kopieren und
15.01.2008 19:01:00
fcs
Hallo Simone,
hier mal das Grundgrüst um die Exceldateien zu suchen, in einer Schleife zu öffnen und bestimmte Daten aus den Blättern der Quelldateien in die Sammeldatei zu übertragen.
Da du über die zu kopierenden Zellbereich(e) keine speziellen Angaben gemacht hast, hab ich hierfür beispielhaft eine Kopierzeile eingefügt, diese müßtest du noch an deine Bedürfnisse anpassen. Ebenso ggf. die Neuberechnung der jeweils nächsten Einfügezeile (lZeileneu).
Das Makro kannst du in einer beliebigen Excel-Datei speichern. Jedoch nicht in einem der Verzeichnisse, die du auswerten willst!
Gruß
Franz

Sub DatenSammeln()
Dim wbNeu As Workbook, wksNeu As Worksheet, lZeileneu As Long
Dim wbQuelle As Workbook, wksQuelle As Worksheet, strQuelle, i As Integer
Dim strVerzeichnis, VerzAktuell As String, DateiNr As Integer
'Verzeichnis durch Wahl einer Datei wählen
VerzAktuell = VBA.CurDir
strVerzeichnis = Application.GetOpenFilename(Filefilter:="Exceldateien(*.xls),*.xls", _
Title:="Bitte Datei im gewünschten Verzeichnis wählen und öffnen")
If strVerzeichnis = False Then Exit Sub
strVerzeichnis = VBA.CurDir
VBA.ChDir VerzAktuell
With Application.FileSearch
.LookIn = strVerzeichnis
.SearchSubFolders = True
.FileType = msoFileTypeExcelWorkbooks
.Execute
Set wbNeu = Workbooks.Add(Template:=xlWBATWorksheet)
Set wksNeu = wbNeu.Worksheets(1)
lZeileneu = 1
DateiNr = 1
Application.ScreenUpdating = False
For Each strQuelle In .FoundFiles
Application.StatusBar = "Datei Nummer  " & DateiNr & "  von  " _
& .FoundFiles.Count
Set wbQuelle = Workbooks.Open(FileName:=strQuelle, ReadOnly:=True)
'Alle Tabellenblätter in Quelle abarbeiten
For i = 1 To wbQuelle.Worksheets.Count
Set wksQuelle = wbQuelle.Worksheets(i)
wksNeu.Cells(lZeileneu, 1) = wbQuelle.FullName
wksNeu.Cells(lZeileneu, 2) = wksQuelle.Name
With wksQuelle
.Range(.Cells(2, 1), .Cells(2, 10)).Copy 'bereich A2:J2
wksNeu.Cells(lZeileneu, 3).PasteSpecial Paste:=xlFormats 'Zell-Formate
wksNeu.Cells(lZeileneu, 3).PasteSpecial Paste:=xlValues 'Zellewerte
'ggf. Code für weitere Zellbereiche ergänzen
End With
lZeileneu = lZeileneu + 1
Next i
wbQuelle.Close savechanges:=False
DateiNr = DateiNr + 1
Next strQuelle
End With
Application.ScreenUpdating = True
Application.StatusBar = False
End Sub


Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige