Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
680to684
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
680to684
680to684
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Alle Excel D. in einem Ordner in eine Excel D.

Alle Excel D. in einem Ordner in eine Excel D.
14.10.2005 13:35:48
sven
Hallo,
ich möchte gerne alle excel dateien in einem ordner in eine große excel datei kopieren. Die große excel datei sollte wie folgt aufgebaut sein:
die arbeitsblätter sollten so heissen wie der dateiname der einzufügen excel dateien ist. z.b. 56119189.xls - Sheet 1
56119190.xls - sheet 2 usw..
Wie kann ich das umsetzen? wäre für jede art von hilfe dankbar.
MFG Sven

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Alle Excel D. in einem Ordner in eine Excel D.
15.10.2005 10:33:05
Stefan
Hallo Sven,
1. Verzeichnis durchsuchen (FSO-Objekt erstellen - schau mal in der Hilfe unter FileSystemObject und dann die Eigenschaft Files: Da gibt es schon ein Script für)
2. Für alle Dateinamen: Workbook.Open // Für alle Blätter Worksheets(x).Copy Destination:ZielmappeName // Blatt umbenennen // Workbook Close
Ich hoffe, das hilft Dir weiter.
Stefan.
AW: Alle Excel D. in einem Ordner in eine Excel D.
15.10.2005 10:42:35
Rolf
Hallo Sven,
hier mal ein konkreter Ablauf,
der jeweils das erste Arbeitsblatt der Datei
in die "große Mappe" kopiert.
Probleme kann's geben, bei zu langen Dateinamen,
Ereignisprozeduren und Verweisen.
fG
Rolf
Option Explicit
'Startprozedur

Sub start_copy_sheets()
Dim verz As String
verz = GetOrdner
ChDir verz
Application.ScreenUpdating = False
ShowFileList (verz)
End Sub

'Excel-Dateien öffnen

Sub ShowFileList(folderspec)
Dim exapp As Object
Dim fs, f, fc, fl As Object
Dim quellbereich As Range
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFolder(folderspec)
Set fc = f.Files
For Each fl In fc
If fl.Type = "Microsoft Excel-Arbeitsblatt" Then
Set exapp = GetObject(folderspec & "\" & fl.Name)
exapp.Sheets(1).Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
ActiveSheet.Name = fl.Name
Call schliessen(fl.Name)
End If
Next
End Sub

'Schließprozedur

Sub schliessen(wind)
Windows(wind).Visible = True
Application.DisplayAlerts = False
Workbooks(wind).Close
End Sub

'Ordnerauswahl

Function GetOrdner(Optional ByVal def = "")
Dim objShell As Object, objfolder As Object
Set objShell = CreateObject("Shell.Application")
Set objfolder = objShell.BrowseForFolder(0, "Bitte einen Ordner wählen", 0, def)
If objfolder Is Nothing Then End
GetOrdner = objfolder.Self.Path
End Function

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige