Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1824to1828
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

Per VBA als .pdf speichern ohne .xlsx

Per VBA als .pdf speichern ohne .xlsx
06.04.2021 18:23:00
Marc
Hallo zusammen,
ich habe vermutlich ein recht banales Problem.
Beim einer Datei per VBA erhalte ich als Dateiname "musterdatei.xlsx.pdf".
Gibt es eine Möglichkeit das "xlsx" aus dem Dateinamen zu entfernen?
Ich hab auch schon das Forum durchforstet, konnte aber leider keine Befriedigende Lösung erhalten welche zu meinem Code passt.
Würde mich freuen wenn jemand helfen kann.
Hier noch der Code den ich zur Erstellung des PDF verwende:
Dim vntReturn As Variant
vntReturn = Application.GetSaveAsFilename(InitialFileName:=strDatei & ".pdf", _
FileFilter:="PDF-Datei (*.pdf), *.pdf)", Title:="PDF erzeugen")
If vntReturn False Then
Call ActiveSheet.ExportAsFixedFormat(Type:=xlTypePDF, _
Filename:=vntReturn, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False)
End If

Viele Grüße
Marc

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Per VBA als .pdf speichern ohne .xlsx
06.04.2021 18:34:03
Nepumuk
Hallo Marc,
was steht denn in "strDatei" bzw. wie wird die Variable gefüllt?
Gruß
Nepumuk
AW: Per VBA als .pdf speichern ohne .xlsx
06.04.2021 19:05:21
Marc
Hallo Nepumuk,
sorry, hab ich vergessen :-(
Die Variable: Dim strDatei As String
Die Datei wird zwischengespeichert bevor in PDF konvertiert wird:
'Datei zwischenspeichern für Senden
Sheets("Formular").Copy
ActiveWorkbook.SaveAs strPfad & "\" & Cells(8, 2)
strDatei = ActiveWorkbook.FullName
ActiveWorkbook.Sheets("Formular").Select

Viele Grüße
Marc
AW: Per VBA als .pdf speichern ohne .xlsx
06.04.2021 19:11:17
Nepumuk
Hallo Marc,
teste mal:
    strDatei = ActiveWorkbook.FullName
strDatei = Left$(strDatei, InStrRev(strDatei, ".") - 1)

Gruß
Nepumuk
Anzeige
AW: Per VBA als .pdf speichern ohne .xlsx
06.04.2021 19:42:48
Marc
Hallo Nepumuk,
Dankeschön für die schnelle Hilfe.
Es funktioniert, aber jetzt bekomme ich am Ende eine Fehlermeldung weil vermutlich Kill strDatei keine Datei mehr findet die gekillt werden kann.
Folgenden Zeilen stehen am Ende meines Codes:
Kill strDatei
Kill strDatei & ".pdf"

Viele Grüße
Marcus
AW: Per VBA als .pdf speichern ohne .xlsx
06.04.2021 19:48:32
Nepumuk
Hallo Marc,
welche Datei soll gelöscht werden?
Gruß
Nepumuk
AW: Per VBA als .pdf speichern ohne .xlsx
06.04.2021 20:45:37
Marc
Hallo Nepumuk,
Kill strDatei soll eigentlich die zwischengespeicherte xlsx. Datei entfernen. Da diese aber wegen der strDatei = Left$(strDatei, InStrRev(strDatei, ".") - 1) Zeile quasi entfernt wird, funktioniert es anscheinend nicht. Wenn ich allerdings Kill strDatei aus dem Code lösche, bleibt die zwischengespeicherte Datei als xlsx. im Hauptordner stehen.
Irgendwie kapier ich das nicht :-(
Viele Grüße
Marc
Anzeige
AW: Per VBA als .pdf speichern ohne .xlsx
06.04.2021 23:23:51
ralf_b
strdatei ist nur ein Text. Den kannst du ja wieder so umbauen das "xlsx" hinten dran stehen. wenn du nicht weist wie, dann mach dir ne zusätzliche Textvariable und schreib den Originaldateinamen da rein.
AW: Per VBA als .pdf speichern ohne .xlsx
07.04.2021 06:23:46
Klaus

Kill strDatei & ".xlsx"
Kill strDatei & ".pdf"
LG,
Klaus M.
AW: Per VBA als .pdf speichern ohne .xlsx
07.04.2021 14:05:14
Marc
Hallo Klaus,
ich hab wie immer zu kompliziert gedacht :-)
Natürlich ist Kill strDatei & ".xlsx" der richtige Weg, jetzt funktioniert alles so wie ich wollte.
Dankeschön an alle für die Unterstützung.
Viele Grüße
Marcus

338 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige