Forum: PC-Programmierung Excel VBA > Pfad wahl > Name + Pfad


von Jan H. (janiiix3)


Lesenswert?

Hallo Community,

gibt es eine Möglichkeit das wenn ich den "SaveAsFile" Dialog öffne er 
mir meinen übergebenen Pfad anzeigt (also er quasie schon im SaveAsFile 
Dialog dorthin navigiert..) und das der Name wie die Datei später heißen 
soll auch schon mit in dem Dialog steht?!.
1
Public Sub CreatePDF(Name As String, Path As String, Ws As Worksheet)
2
3
Dim strfile As String
4
Dim myFile As Variant
5
Dim sTimestamp As String
6
7
sTimestamp = Str(DateTime.Now)
8
9
On Error GoTo ErrorHandler
10
11
Ws.PageSetup.Zoom = False
12
Ws.PageSetup.FitToPagesTall = 1
13
Ws.PageSetup.FitToPagesWide = 1
14
15
strfile = Dir(Path) + "\" + Name
16
17
'ChDrive Left(Path, 1)
18
'ChDir Path
19
20
myFile = Application.GetSaveAsFilename _
21
(InitialFileName:=strfile, _
22
FileFilter:="PDF Dateien (*.pdf), *.pdf", _
23
Title:="Bitte unter Wartungsprotokolle ablegen!")
24
25
If myFile = False Then
26
    MsgBox "Druckvorgang abgebrochen.", vbInformation, "PDF - Modul"
27
    Exit Sub
28
End If
29
30
Ws.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
31
myFile, Quality:=xlQualityStandard, IncludeDocProperties:=True, _
32
IgnorePrintAreas:=False, OpenAfterPublish:=True, From:=1, To:=2
33
34
35
ErrorHandler:
36
37
MsgBox "Fehler im PDF Modul", vbCritical, "PDF - Modul"
38
39
End Sub

Aktuell komme ich da nicht weiter. Eins von beiden scheint nur zu gehen.
Entweder navigiert er zu dem Pfad und zeigt mir dann aber meinen 
übergebenen Namen nicht an oder eben er zeigt mir den Namen an aber 
navigiert nicht zu dem Pfad.

von Wühlhase (Gast)


Lesenswert?

Doch, das geht. Sonst würde ich beim Navigieren manchmal irre werden.
Moment...

von Wühlhase (Gast)


Lesenswert?

With Application.FileDialog(msoFileDialogFilePicker)
    .AllowMultiSelect = True
    .InitialFileName = "C:\your\path"
    .Title = "Bitte Dateien auswählen..."
    If .Show = -1 Then
        For Each element In .SelectedItems
            ...
        Next
     Else
         Exit Sub
     End If
End With


Mit dem Dateispeichern und Namen vorgeben sollte das genauso 
funktionieren.

von Timo E. (cumbaya)


Lesenswert?

strfile = Dir(Path) + "\" + Name
Entferne in dieser Zeile die Dateiendung, also z.B. so:
strfile = Dir(Path) + "\" + left(Name,Len(name)-4)

Dann sollte es klappen.

von Jan H. (janiiix3)


Lesenswert?

Ich danke euch. Werde es später mal probieren!.

von Jan H. (janiiix3)


Lesenswert?

Timo E. schrieb:
> strfile = Dir(Path) + "" + Name
> Entferne in dieser Zeile die Dateiendung, also z.B. so:
> strfile = Dir(Path) + "" + left(Name,Len(name)-4)
> Dann sollte es klappen.

Leider nach wie vor das selbe Problem. Die Dateiendung wird auch 
überhaupt nicht mit übergeben.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.