Registriert seit: 11.03.2015
Version(en): 2010
Hallo Ihr Lieben,
habe in in meinem Makro folgenden Teil eingebaut:
Dim myPath, myFileName As String
myPath = ThisWorkbook.Path
myFileName = Range("d2") & ".xlsm"
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs myPath & "\" & myFileName
Die Datei liegt im Ordner D:\Dokumente\FUCHS und heißt 09.03.2018.xlsm (wird aus dem Feld D2 gezogen)
Wenn ich das Makro ablaufen lasse, speichert es mir die Datei nicht in oben genanntem Ordner sondern nur in D:
Wo und was muss ich da noch ändern?
LG.
Peggy
Registriert seit: 12.10.2014
Version(en): 365 Insider (64 Bit)
Moin!
Suche mal im Ordner FUCHS nach der Datei 43168.xlsm
Dies müsste Dein Code machen, wenn in D2 das Datum 9.3.18 steht.
Der Code ist soweit korrekt.
Ich würde das Datum jedoch im Text-Format JJJJ_MM_TT speichern.
Dann wird im Explorer korrekt nach Datum sortiert.
Also
myFileName = Format(Range("d2"), "yyyy_mm_dd")
Die Dateiendung kannst Du Dir sparen, die wird selbständig angehängt.
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 11.04.2014
Version(en): '97 bis 2016; 365
10.03.2018, 13:03
(Dieser Beitrag wurde zuletzt bearbeitet: 10.03.2018, 13:03 von Käpt'n Blaubär.)
Hallo Peggy,
da es inzwischen drei unter verschiedenen Überschriften laufende Threads von Dir gibt
die alle das gleiche Thema abhandeln, fühle ich kein großes Interesse mehr, Dir weiterhin
zu helfen. Zumal Du offensichtlich selbst die Übersicht über den derzeitigen Stand Deiner
Anfragen verloren hast.
So wie ich das sehe, wurde Deine Frage in einem dieser Threads bereits beantwortet.
Sollte ich mich irren, dann entschuldige ich mich auch recht artig, aber mir persönlich ist
das Ganze zu wuselig.
Registriert seit: 11.03.2015
Version(en): 2010
Hallo Käptn Blaubär,
sorry wenn ich für Verwirrung gesorgt habe. Da ich in das Projekt bis Montag fertig haben muss,
habe ich die einzelnen Baustellen in einzelne Themen aufgeschlüsselt.
Durch Uwes Hilfe bin ich auch schon ziemlich weit gekommen.
Leider besteht immer noch das Worbookpath-Problem.
@Ralf - Die Datei wird ja unter dem korrekten Namen abgespeichert, halt nur nicht in dem richtigen Pfad:
D:\Dokumente\FUCHS sondern nur unter D:
Der Name ist korrekt.
Hoffe es hilft mir trotzdem jemand weiter. Wäre wirklich Super.
LG.
Peggy
Registriert seit: 12.10.2014
Version(en): 365 Insider (64 Bit)
Was steht denn in der Variable myPath zur Laufzeit?
Steppe mal mittels F8 durch den Code und schaue ins Lokalfenster (Ansicht, Lokalfenster) oder lasse dir die Variable mittels Debug.Print myPath ins Direktfenster (Strg+g) ausgeben.
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 12.10.2014
Version(en): 365 Insider (64 Bit)
Außerdem:
Wenn Du den Pfad doch kennst, warum ermittelst Du ihn dennoch per ThisWorkbook.Path?
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 11.04.2014
Version(en): '97 bis 2016; 365
Hallo,
dann versuche es mal so
Zitat:Dim myPath As String, myFileName As String
anstatt
Zitat:Dim myPath, myFileName As String
Registriert seit: 11.03.2015
Version(en): 2010
10.03.2018, 14:58
(Dieser Beitrag wurde zuletzt bearbeitet: 10.03.2018, 16:40 von Rabe.
Bearbeitungsgrund: Code-Tags verwendet
)
Hallo Ihr Beiden,
vielen herzlichen Dank für Eure Hilfe. Habe nun meinen Fehler gefunden.
Mein Makro schaut komplett nun so aus:
Code:
Sub Vorlageöffnen()
'
' Vorlageöffnen Makro
'
If Range("D1").Value = 0 Then
Dim myPath, myFileName As String
myPath = ThisWorkbook.Path
myFileName = Format(Range("d2"), "dd.mm.yyyy")
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs myPath & "\" & myFileName
Application.DisplayAlerts = True
Else
myPath = ThisWorkbook.Path 'hier den Baustein hatte ich vergessen
myFileName = Format(Range("d3"), "dd.mm.yyyy") & ".xlsm"
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs myPath & "\" & myFileName
Application.DisplayAlerts = True
Workbooks.Open Filename:="D:\ Dokumente\FUCHS\Vorlage.xlsm"
Sheets("Tabelle1").Select
Range("B5").Select
myPath = ThisWorkbook.Path 'hier den Baustein hatte ich vergessen
myFileName = Range("d2") & ".xlsm"
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs myPath & "\" & myFileName
Windows(Range("d3") & ".xlsm").Activate
ActiveSheet.Unprotect "123"
Range("D1").Select
ActiveCell.FormulaR1C1 = "0"
Range("D2").Select
ActiveSheet.Protect "123"
ActiveWorkbook.Save
ActiveWindow.Close
Range("B5").Select
Application.DisplayAlerts = True
End If
End Sub
Mit der Schritt für Schritt-Anleitung ist es mir dann aufgefallen.
Da mein Pfad hier und dann in der Firma unterschiedlich ist habe ich die Variante gewählt. Und auch dort, wird
das Makro dann auf unterschiedlichen Rechnern eingesetzt.
Deshalb diese Variante.
Vielen Dank Euch.
LG.
Peggy