Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

ThisWorkbookpath
#1
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?

Huh

LG.

Peggy
Antworten Top
#2
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)
Antworten Top
#3
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.
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antworten Top
#4
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
Antworten Top
#5
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)
Antworten Top
#6
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)
Antworten Top
#7
Hallo,

dann versuche es mal so
Zitat:Dim myPath As String, myFileName As String

anstatt
Zitat:Dim myPath, myFileName As String
________________________________________________________________________
wer aufgibt, ohne es versucht zu haben, gibt einfach nur auf!

Grüße aus Norderstedt, Peter
Antworten Top
#8
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
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste