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

Forumthread: VBA2010 wenn dateiname dann makro

VBA2010 wenn dateiname dann makro
17.01.2013 09:46:25
Rene
Hallo Leute,
ich habe einen Pfad, wo nur jene Dateien geöffnet werden sollen, die mit "BK" beginnen. Dann soll für all diese geöffneten "BK"-Dateien ein Makro durchlaufen, die BK-Dateien sind alle gleich aufgebaut. Nachdem das Makro durchgelaufen ist, soll die Datei unter dem Format .csv gespeichert und geschlossen werden. Am Namen ändert sich nix, Bsp. Dateiname = BK2314.csv.
Wie muss ich den Code anpassen?
Sub Dateien_öffnen()
Dim Datei As String
Dim PFAD As String
PFAD = "C:\Temp\"     'Pfad anpassen
Datei = Dir(PFAD & "*.xlsx")        'ggf. Dateiextension anpassen
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Do While Datei  ""
Application.Workbooks.Open Datei
Call Aufbereiten    'Makro laufen lassen
ActiveWorkbook.Close True
Datei = Dir()                   'nächste Datei
Workbook
Loop
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
VIelen Dank!
Rene

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: VBA2010 wenn dateiname dann makro
17.01.2013 09:50:50
Rudi
Hallo,
Datei = Dir(PFAD & "BK*.xlsx")
Gruß
Rudi

AW: VBA2010 wenn dateiname dann makro
17.01.2013 10:29:44
Rene
Ach Rudi, so einfach wenn man es weiss - ich hab seit gestern Mittag die ganze Zeit im Archiv gesucht und herumprobiert mit instr, regex und ähnlichem... hatte dann den Kopf blockiert mit (für mich) komplizierten Befehlen.
VIELEN, VIELEN Dank!!
Rene
Der Vollständigkeit halber stell ich jetzt den funktionierenden Code hier ein:
Sub Dateien_öffnen()
Dim Datei As String
Dim PFAD As String
PFAD = "C:\Temp\"     'Pfad anpassen
Datei = Dir(PFAD & "BA*.xlsx")        'ggf. Dateiextension anpassen
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Do While Datei  ""
Application.Workbooks.Open Datei
Call Aufbereiten    'Makro laufen lassen
ActiveWorkbook.SaveAs FileFormat:=xlCSV, CreateBackup:=False
ActiveWorkbook.Close True
Datei = Dir()                   'nächste Datei
Loop
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub

Sub Aufbereiten()
Range("A1:A3").Copy Destination:=Range("B1:B3")
Columns("A:A").Delete Shift:=xlToLeft
Rows("4:4").Insert Shift:=xlDown
Range("D1").Select
End Sub

Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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