Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1740to1744
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Fehler im Code beim speichern

Fehler im Code beim speichern
25.02.2020 14:43:19
Ludger
Hallo an alle im Forum,
Dieser Code funktioniert eigentlich ganz gut, aber es gibt ein kleines Problem.
Das Problem ist das zwar ein Unterordner erstellt wird, aber die Datei nicht darin gespeichert werden, sondern außerhalb des Ordners.
Option Explicit
Sub PrüfenAnlegenPDFspeichern()
Dim Pfad As String
Dim Ordner As String
Dim Datei As String
Dim Endpfad As String
With Sheets("PDF")
Ordner = .Cells(1, 2).Value & "_" 'Namen der Unterordner
Datei = "Sonderfahrtabrechnung_" & .Cells(12, 7).Value & "_" & .Cells(5, 7).Value & ".pdf" ' Dateiname PDF
End With
Pfad = "E:\Ludger\Documents\Exel_Test\Sonderfahrten\" & Ordner 'Grundpfad
If Dir(Pfad, vbDirectory) = Ordner Then
MsgBox "Das Verzeichnis existiert bereits!"
Else
Call MakeDir(Pfad)
MsgBox "Verzeichnis erstellt."
End If
Endpfad = Pfad & Datei
MsgBox "Verzeichnis " & Endpfad
'Sheets(Array("Deckblatt Q-Fähigk ", "Proz-BalkenMatrix", "Bewertungsmatrix", _
'"QTP dt.", "Maßnahmenplan")).Select
Sheets("PDF").Activate
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
Endpfad, Quality _
:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False
End Sub
Private Function MakeDir(FolderName As String)
Dim S As Variant, i As Long, F As String
S = Split(FolderName, "\")
For i = LBound(S) To UBound(S)
If S(i)  "" Then
F = F & S(i) & "\"
On Error Resume Next
MkDir F
On Error GoTo 0
End If
Next i
End Function
würde mich freuen wenn einer da wäre der mir helfen könnte
Lieben Gruß Ludger

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehler im Code beim speichern
25.02.2020 14:53:58
peterk
Hallo
Dein Endpfad: "E:\Ludger\Documents\Exel_Test\Sonderfahrten\NeuerOrdner_Sonderfahrtabrechnung.pdf"
Ordner = .Cells(1, 2).Value & "_" 'Namen der Unterordner : KEIN "_" sondern "\"
AW: Fehler im Code beim speichern
25.02.2020 14:56:15
Nepumuk
Hallo Ludger,
wahrscheinlich fehlt der \ am Ende des Ordnerpfades. Teste mal:
Option Explicit

Private Declare PtrSafe Function MakeSureDirectoryPathExists Lib "imagehlp.dll" ( _
    ByVal DirPath As String) As Long

Sub PrüfenAnlegenPDFspeichern()
    Dim Pfad As String
    Dim Ordner As String
    Dim Datei As String
    Dim Endpfad As String
    
    With Worksheets("PDF")
        Ordner = .Cells(1, 2).Value & "_" 'Namen der Unterordner
        Datei = "Sonderfahrtabrechnung_" & .Cells(12, 7).Value & "_" & .Cells(5, 7).Value & ".pdf" ' Dateiname PDF
    End With
    
    Pfad = "E:\Ludger\Documents\Exel_Test\Sonderfahrten\" & Ordner & "\" 'Grundpfad
    
    If MakeSureDirectoryPathExists(Pfad) = 0 Then
        MsgBox "Fehler beim Zugriff", vbCritical, "Zugriffsfehler"
        Exit Sub
    End If
    
    Endpfad = Pfad & Datei
    ' MsgBox "Verzeichnis " & Endpfad
    
    'Sheets(Array("Deckblatt Q-Fähigk ", "Proz-BalkenMatrix", "Bewertungsmatrix", _
        '"QTP dt.", "Maßnahmenplan")).Select

    Worksheets("PDF").ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        Endpfad, Quality:=xlQualityStandard, IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, OpenAfterPublish:=False
    
End Sub

Gruß
Nepumuk
Anzeige
AW: Fehler im Code beim speichern
25.02.2020 16:53:31
Ludger
Hallo ich Danke euch beiden,
beides hat geholfen.
Ich Bedanke mich bei euch!
Gruß Ludger

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige