Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Dateinamen automatisch übernehmen

Forumthread: Dateinamen automatisch übernehmen

Dateinamen automatisch übernehmen
26.05.2007 11:13:04
Christian
Servus zusammen,
ich habe folgenden Teil in meinem Makro stehen

Sub kopieren()
Dim lngLastRow As Long
Workbooks.Open Filename:="K:\Mappe1.xls"
With Workbooks("Mappe1.xls").Sheets("Tabelle1")
lnglastRow = .Cells.Find(What:="*", After:=Range("A1"), SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
Range("$A$1:$G$" & lnglastRow).Copy Destination:=Workbooks("07-7.xls").Sheets("Tabelle1"). _
Range("A65536").End(xlUp).Offset(0, 0)
End With
Workbooks("Mappe1.xls").Close SaveChanges:=True
Application.CutCopyMode = False
End Sub


Da ich jewils 50 fortlaufende Dateien habe ( 07-1.xls, 07-2.xls , 07-3.xls, u.s.w.), muss ich natürlich jedesmal den Destination-Pfad anpassen, damit das Makro in der jeweiligen Datei abläuft.
Wie kann man das Makro umschreiben, dass der Destination-Pfad, automatisch den entsprechenden Dateinamen in Workbooks("Dateiname").Sheets... übernimmt.
Besten Dank für eure Hilfe.
Gruß
Christian

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dateinamen automatisch übernehmen
26.05.2007 11:17:00
Matthias
Hallo Christian,
statt Workbooks("07-7.xls").Sheets("Tabelle1") kannst du schreiben:
ThisWorkbook.Sheets("Tabelle1")
ThisWorkbook ist das, in dem der Code steht.
Gruß Matthias

AW: Dateinamen automatisch übernehmen
26.05.2007 11:54:06
Christian
Danke,
irgenwie logisch. Funktioniert einwandfrei. Danke.
Ich habe allerdings hier auch noch ein anderes Makro mit ähnlichem Problem:

Sub dateizähler1()
Dim zähler As Byte
Application.DisplayAlerts = False 'keine Warnungen anzeigen
For zähler = 1 To 50
ActiveWorkbook.SaveCopyAs "D:\Rad\Datenbank\Master\Master-" & zähler & ".XLS"
Next
Application.DisplayAlerts = True
End Sub


Hier soll der Pfad automatisch angepasst werden. Sagen wir die Datei steht in "D:\Rad\Datenbank\2007\07-"& zähler & ".XLS" oder statt 07 z.B.: 08 ...\2008\08-...
Wie kann man das bewerkstelligen?
Gruß
Christian

Anzeige
AW: Dateinamen automatisch übernehmen
26.05.2007 12:04:07
Matthias
Hallo Christian,
das müsste so gehen:

ActiveWorkbook.SaveCopyAs ThisWorkbook.Path & "\..\Master\Master-" & zähler & ".XLS"


das \..\ bringt dich eine Verzeichnisebene höher.
Gruß Matthias

AW: Dateinamen automatisch übernehmen
26.05.2007 12:21:00
Christian
Servus Matthias,
ThisWorkbook.Path das wars:
habe es so gelöst und funktioniert einwandfrei:

Sub dateizähler1()
Dim s As String
Dim zähler As Byte
s = InputBox("Dateiname ohne xls ?")
If s  "" Then
Application.DisplayAlerts = False 'keine Warnungen anzeigen
For zähler = 1 To 50
ActiveWorkbook.SaveCopyAs ThisWorkbook.Path & "\" & s & zähler & ".XLS"
Next
Application.DisplayAlerts = True
Else
Exit Sub
End If
End Sub


Dank dir für den Tipp.
Gruß
Christian

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