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

pdf erstellen ohne pdf-Drucker zu installieren

pdf erstellen ohne pdf-Drucker zu installieren
13.03.2015 09:12:26
Matthias
Hallo,
gibt es über VBA eine Möglichkeit eine Pdf-erstellen zu lassen, ohne das ein entsprechender pdf-Drucker angesteuert wird.
Ich möchte einen Button erstellen, der nicht auf einen Pdf-Drucker zugreift.
Hintergrund ist der, falls die Datei auf einen anderen PC geöffnet wird und dieser pdf-Drucker nicht installiert ist, funktioniert die Funktion nicht.
Super wäre hier auch die Auswahl des Speicherortes und des Speichernamees.
dank.

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
für XL2007 bin ich mir nicht sicher ...aber ...
13.03.2015 09:18:50
neopa
Hallo Matthias,
... zumindest ab XL2010 kannst Du die PDF direkt aus Excel mit Speichern unter im Datenformat PDF ausgeben. Vielleicht gibt es dies ja auch schon in XL2007.
Gruß Werner
.. , - ...

AW: pdf erstellen ohne pdf-Drucker zu installieren
13.03.2015 09:20:20
Oberschlumpf
Hi Matthias
Kannst du sicher davon ausgehen, dass auf jedem Computer, auf dem deine Datei gestartet wird, mindestens Office, bzw Excel 2007 installiert ist?
Wenn ja, dann benötigst du keinen "PDF-Drucker", denn ab Office 2007 ist es möglich, die Dateien als PDF-Datei zu speichern....also Speichern Unter auswählen, Dateityp PDF auswählen, speichern.
Wenn du NICHT weißt, ob auf jedem Computer Office 2007 installiert ist, dann funktioniert es ohne installierten PDF-Drucker nicht.
Hilfts?
Ciao
Thorsten

Anzeige
AW: pdf erstellen ohne pdf-Drucker zu installieren
13.03.2015 10:28:06
Matthias
Hallo,
ja davon kann man ausgehen.
Wie kann ich dann den pdf-befehl auswählen per VBA?
Ich möchte nicht den Umweg über Datei/Drucken gehen.
Besten Dank.

AW: pdf erstellen ohne pdf-Drucker zu installieren
13.03.2015 10:32:00
mumpel
Hallo!
Stichwort: ExportAsFixedFormat
Gruß, René

AW: pdf erstellen ohne pdf-Drucker zu installieren
13.03.2015 10:41:39
Matthias
Hallo,
danke für den Tipp.
Ich habe mich mal schlauch gemacht mit nachfolgend Code.
Sub PDF_Print_Sheet()
'Modifiziert
Dim wks As Worksheet
For Each wks In ActiveWindow.SelectedSheets
wks.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\" & Environ("Username") & "\Desktop\" & ActiveSheet.Name & ".pdf", Quality:= _
xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
Next wks
End Sub
Leider bringt er mir immer innen Fehler (400).
Kann mir jemand weiterhelfen?
Ich komme hier nicht weiter :(

Anzeige
AW: pdf erstellen ohne pdf-Drucker zu installieren
13.03.2015 11:06:56
mumpel
"ActiveSheet.Name" bringt Dir in diesem Fall nichts, da Du nicht mehrere Dateien unter dem selben Namen speichern kannst. Was genau möchtest Du erreichen?

AW: pdf erstellen ohne pdf-Drucker zu installieren
13.03.2015 11:18:58
Matthias
Hallo,
ich möchte das aktive Tabellenblatt als Pdf generien.
Die Pdf soll genauso heissen wie mein Tabellenblatt.
Schön wäre noch den Speicherort noch varibalen ausgeben zu können.
Falls nicht ein sollte die Datei am Desktop gespeichert werden.
Wobei der Befehl auch auf anderen PCS mit anderen Nutzern funktionieren soll.
Gruss

AW: pdf erstellen ohne pdf-Drucker zu installieren
13.03.2015 11:58:35
fcs
Hallo Mathias,
zum Speichern auf dem Desktop muss du dein Makro wie folgt anpassen.
Mit Auswahldialog wird der Code etwas länger.
In der Textdatei sind Makros für verschiedene Varianten
- Gesamte Arbeitsmappe in eine PDF-Datei
- einzelne Blätter in eine PDF-Datei
- gruppierte Blätter einzeln in PDF-Dateien
- gruppierte Blätter in eine Datei
- Liste von Blättern (im Code festvorgegeben) in eine PDF-Datei.
https://www.herber.de/bbs/user/96345.txt
Gruß
Franz
Sub PDF_Print_Sheet()
'Modifiziert - Ausgabe der selektierten Blätter in jeweils eine separate PDF-Datei
Dim wks As Object
For Each wks In ActiveWindow.SelectedSheets
wks.Select
wks.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\" & Environ("Username") & "\Desktop\" & wks.Name & ".pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=True
Next wks
End Sub
Sub PDF_Print_GroupedSheets()
'Modifiziert - Ausgabe der selektierten Blätter in eine PDF-Datei
Dim wkb As Workbook
Set wkb = ActiveWorkbook
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\" & Environ("Username") & "\Desktop\" _
& Left(wkb.Name, InStrRev(wkb.Name, ".") - 1) & ".pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=True
End Sub

Anzeige
AW: pdf erstellen ohne pdf-Drucker zu installieren
16.03.2015 09:38:48
Matthias
Hallo vielen Dank.
Jedoch funktionert es nicht.
Ich habe den Code
Sub PDF_Print_Sheet()
'Modifiziert - Ausgabe der selektierten Blätter in jeweils eine separate PDF-Datei
Dim wks As Object
For Each wks In ActiveWindow.SelectedSheets
wks.Select
wks.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\" & Environ("Username") & "\Desktop\" & wks.Name & ".pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=True
Next wks
End Sub
in meine Excelmappe eingefügt. Es wurde keine Modul oder Formular verwendet.
Ich habe eine Schaltfläche generiert und das Makro zugewiesen.
Nun kommt der Fehler.
400
Was habe ich falsch gemacht?

Anzeige
AW: pdf erstellen ohne pdf-Drucker zu installieren
16.03.2015 10:16:11
fcs
Hallo Mathias,
ich habe keine Ahnung was du falsch gemacht hast, denn der Blick durch meine Kristallkugel reicht nicht so weit.
Ich habe den Code getestet, wobei er in ein allgemeines Modul der Datei eingebaut war.
Ich hab es jetzt mal probiert mit Makro unter einem Tabellenblatt-Modul und einer Schaltfläche aus den Formularsteuerelementen. Auch das funktioniert. Das Tabellenblatt mit der Schaltfläche muss dann aber auch bei jeder PDF-Ausgabe mit selektiert werden, idealer Weise als 1. Blatt.
Produziert denn der Ausdruck "C:\Users\" & Environ("Username") & "\Desktop\" ein gültiges Verzeichnis?
Der Fehler 400 wird generiert wenn das Verzeichnis ungültig ist.
Du musst diesen Ausdruck so anpassen, dass er ein gültiges Verzeichnis berechnet.
Außerdem darf im PDF-Viewer keine Datei geöffnet sein, die einen der automatisch generierten Dateinamen hat.
Gruß
Franz

Anzeige
AW: pdf erstellen ohne pdf-Drucker zu installieren
16.03.2015 11:51:24
matthias
Hallo,
ich habe den Fehler gefunden. Jetzt geht es, wenn keine Datei schon vorhanden ist.
Kann man den Code noch ergänzen mit der Info, dass z.b die Datei schon vorhanden ist und nicht der Fehler angezeigt wird?
Gruss

AW: pdf erstellen ohne pdf-Drucker zu installieren
16.03.2015 12:45:40
fcs
Hallo Mathias,
ich hab jetzt mal Prüfungen des Verzeichnisses und des Dateinamens eingebaut mit entsprechenden Meldungen und Optionen für die Fortsetzung.
Gruß
Franz
Sub PDF_Print_Sheet()
'Modifiziert - Ausgabe der selektierten Blätter in jeweils eine separate PDF-Datei
Dim wks As Object
Dim strPfad As String, strName As String
strPfad = "C:\Users\" & Environ("Username") & "\Desktop"
'Prüfunmg ob Verzeichnis vorhanden
If Dir(strPfad, vbDirectory) = "" Then
MsgBox "Das Verzeichnis """ & strPfad & """ gibt es nicht!", _
vbOKOnly, "PDF speichern"
Else
strPfad = strPfad & "\"
For Each wks In ActiveWindow.SelectedSheets
strName = wks.Name & ".pdf"
'prüfen ob Dateiname im Verzeichnis schon vorhanden
If Dir(strPfad & strName)  "" Then
Select Case MsgBox("Die Datei """ & strName _
& """ existiert schon im Verzeichnis" & vbLf & strPfad _
& vbLf & "Datei überschreiben?", _
vbQuestion + vbYesNoCancel + vbDefaultButton2, "PDF speichern")
Case vbYes
'überschreibt vorhandene PDF-Datei gleichen Namens
Case vbNo
'überschreibt nicht vorhandene PDF-Datei gleichen Namens
GoTo next_wks
Case vbCancel
'bricht Speichern PDF ab
Exit For
End Select
End If
wks.Select
wks.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strPfad & strName, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=True
next_wks:
Next wks
End If
End Sub

Anzeige
AW: pdf erstellen ohne pdf-Drucker zu installieren
16.03.2015 14:11:07
matthias
Vielen Vielen Dank.
Perfekt :)

188 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige