Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
916to920
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
916to920
916to920
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Gleiche Datei in mehreren Unterordner

Gleiche Datei in mehreren Unterordner
24.10.2007 16:49:00
Andre
Hallo VBA Profis,
ich habe ein Problem. Ich habe die gleiche Datei mit dem gleichen Namen in verschiedenen Unterordnern. Ich möchte jetzt, dass die Änderung die ich in einem Sheet per Makro mache auch in allen Sheets in den Unterordnern gemacht werden. Mit GetFileName kann ich ja jeweils einen Ordner öffnen und das File anklicken und dann geht mein Makro los und macht Änderungen. Ich suche aber eine Funktion, die alle gleichlautenden Dateien in den 80 Unterordnern für mich aufmacht, die änderung durchführt und dann wieder schließt oder die Änderungen vornimmt ohne die Datein überhaupt zu öffnen?
Könnt ihr mir bitte helfen.
Danke
Andre

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Kopiere die Datei doch einfach
24.10.2007 16:58:07
NoNet
Hallo Andre,
genügt es nicht, die Datei einfach in die betreffenden Ordner zu kopieren ?
Gruß, NoNet

AW: Kopiere die Datei doch einfach
24.10.2007 17:07:01
Andre
Halo NoNet,
leider nicht. Ich muß mehr erklären. Die Dateien heißen zwar alle gleich aber jeder Ordner steht für einen anderen Bereich. Ich muß Daten umarbeiten von einem System auf ein anderes und wenn der Chef jetzt kommt und sagt: "In allen Sheets muß die Spalte A jetzt in Spalte C kopiert werden", dann muss ich alle Dateien aufmachen und das umkopieren.
Danke für die Hilfe
Gruß
Andre

AW: Kopiere die Datei doch einfach
24.10.2007 21:05:00
Tino
Hallo,
mit diesen Code müsste es gehen!
Klicken auf Extras | Verweise… und markieren im nun folgenden Fenster in der Liste den Eintrag Microsoft Scripting Runtime

Public FSO As New FileSystemObject
Sub Speichern()
Dim f As Folder
For Each f In FSO.GetFolder(ActiveWorkbook.Path).SubFolders
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:= _
f & "\" & ActiveWorkbook.Name, _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Application.DisplayAlerts = True
Next
End Sub


Gruss
Tino

Anzeige
NEIN, damit ÜBERSCHREIBST Du Dateien
25.10.2007 09:03:00
NoNet
Hallo Tino,
mit Deinem Code werden die Dateien überschrieben, genau DAS wollte Andre ja NICHT !
Ansonsten wäre filecopy auch schneller !
Andre wollte ja nur TEILE der Workbooks gezielt ändern !
Dazu muss allerdings jede Mappe einzeln geöffnet und der betreffende Teil ausgetauscht werden.
Da halte ich allerdings eine Verknüpfung dieser Mappen zu einer änderbaren MASTER-Mappe für sinnvoller !
Gruß, NoNet

AW: NEIN, damit ÜBERSCHREIBST Du Dateien
25.10.2007 10:22:00
Tino
Hallo,
habe ich falsch verstanden. sorry
Gruss
Tino

Dachte eher an so etwas!!!
25.10.2007 14:09:00
Andre
Hallo Tino und NoNet,
Danke für eure Hilfe, aber ich dachte eher an soetwas, wie ich es in einem anderen Thread hier gelesen habe.
Hallo Zusammen,
da ich in der letzten Zeit tolle Unterstützung erfahren habe, wäre ich super-dankbar, wenn sich noch einmal jemand einem neuen Problem von mir annehmen würde ;-)
Das u.g. Skript öffnet, bearbeitet und schließt in einem bestimmten Ordner alle Excel-Dateien und verändert einen gewünschten String; ich hätte jedoch gerne, dass neben dem Ordner auch ALLE Unterordner nach Excel-Dateien durchsucht werden; das würde meine Sache sehr erleichtern.
Würde mich freuen, wenn es Vorschläge gäbe...
Herzlichen Dank,
Grüße,
Alexander

Sub GRAN_TOURISMO()
Dim f$, p$, i&
p = "C:\Ordner\"
f = Dir(p & "*.xls")
i = 1
Do While f  ""
Workbooks.Open Filename:=p & f
For Each w In Workbooks
If w.Name  ThisWorkbook.Name Then
For Each ws In Worksheets
ws.Columns().Replace _
What:="Flughafen", Replacement:="airport", _
SearchOrder:=xlByColumns, MatchCase:=False
Next ws
w.Close savechanges:=True
End If
Next w
i = i + 1: f = Dir
Loop
End Sub


Hio...
Nimm das Application Filesearch Objekt, da kannst du Seach Subfolders = True setzen...
Beispiel hier
***********************************************************************
c0bRa verweist auf ein anderes Forum, in dem die Lösung an einem anderen Beispiel gezeigt wird. Leider reichen meine VBA Kenntnisse nicht aus, dies miteinander zu kombinieren.
Gruß
Andre

Anzeige

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige