Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

sdfsdf

Forumthread: sdfsdf

sdfsdf
Hans
Hallo Miteinander,
mittels dieses Makros möchte ich viele Dateien öffen, etwas verändern (Application.Run "aktualisieren") und wieder schliessen.
Problem 1:
Es sollen auch alle Dateien in den Unterordnern bearbeitet werden
Problem 2:
Es sollen nur xls Dateien mit folgendem Namensschema geöffnet und bearbeitet werden:
z.B.
Mrz 13_abc_0123.xls
'abc' ist eine max 6 stellige buchstaben-zahlen kombi. alle anderen werte ändern sich in der anzahl der buchstaben und zahlen nicht.
Leider blick ich unten stehendes Makro überhaupt nicht und kann das nicht entsprechend verändern.
Vieln Dank für Eure Mühen.
Hans
<pre>Sub DatenKopieren_auswert()
Dim oFS As Object, oFolder As Object, oFile As Object
Dim wksNeu As Worksheet, wksDaten As Worksheet
Dim strFolder As String
With Application.FileDialog(4)
.InitialFileName = "C:\Dokumente und Einstellungen\abc\"
.InitialView = 2
.Title = "Bitte einen Ordner wählen"
If .Show = -1 Then
strFolder = .SelectedItems(1)
End If
End With
If strFolder <> "" Then
Application.ScreenUpdating = False
Set oFS = CreateObject("scripting.filesystemobject")
Set oFolder = oFS.getfolder(strFolder)
For Each oFile In oFolder.Files
Application.EnableEvents = False
Set wksDaten = Workbooks.Open(oFile).Sheets(1)
Application.Run "aktualisieren"
Next oFile
Application.ScreenUpdating = True
End If
End Sub</pre>
Anzeige

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

Betreff
Benutzer
Anzeige
AW: sdfsdf
27.07.2010 22:31:22
Rudi
Hallo,
ungetestet:
Sub DatenKopieren_auswert()
Dim oFS As Object, oFolder As Object, oSFolder As Object, oFile As Object
Dim wksNeu As Worksheet, wksDaten As Worksheet
Dim strFolder As String
On Error GoTo ERRHDL
With Application.FileDialog(4)
.InitialFileName = "C:\Dokumente und Einstellungen\abc\"
.InitialView = 2
.Title = "Bitte einen Ordner wählen"
If .Show = -1 Then
strFolder = .SelectedItems(1)
End If
End With
If strFolder  "" Then
Application.ScreenUpdating = False
Application.EnableEvents = False
Set oFS = CreateObject("scripting.filesystemobject")
Set oFolder = oFS.getfolder(strFolder)
For Each oFile In oFolder.Files
If oFile.Name Like "? ##_*_####.xls" Then
Set wksDaten = Workbooks.Open(oFile).Sheets(1)
Application.Run "aktualisieren"
End If
Next oFile
For Each oSFolder In oFolder.subfolders
For Each oFile In oSFolder.Files
If oFile.Name Like "? ##_*_####.xls" Then
Set wksDaten = Workbooks.Open(oFile).Sheets(1)
Application.Run "aktualisieren"
End If
Next oFile
Next oSFolder
End If
ERRHDL:
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub

Gruß
Rudi
Anzeige
AW: sdfsdf
27.07.2010 22:43:16
Hans
Super Danke!
Schönen Abend noch.
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18