Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
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 20: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 20:43:16
Hans
Super Danke!
Schönen Abend noch.
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige