Vanuit VBA (Userform) automatisch PDF genereren

Status
Niet open voor verdere reacties.

erwin71

Gebruiker
Lid geworden
8 apr 2012
Berichten
19
Leden,

Ik zou graag vanuit een UserForm bij het klikken van een button automatisch een PDF willen genereren van 2 sheets.

Is dit mogelijk?

Voorlopig heb ik het volgende (Dit geeft enkel het printdialoog weer).

Code:
Sub tst()
Application.Dialogs(xlDialogPrint).Show
End Sub

Alvast bedankt!

Erwin
 
Laatst bewerkt door een moderator:
Met welke XL-versie werk je ?
 
Hier kan je mee starten.
Code:
Sheets(Array("Sheet1", "Sheet2")).Select
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "C:\het volledig pad\bestandsnaam.pdf" _
        , Quality:=xlQualityStandard, OpenAfterPublish:=False
 
Super, het werkt gewoon!

Nu slaat het wel op onder C:\Users\Erwin\Desktop\KostenBaten.pdf
Dit zal hooooogstwaarschijnlijk op een andere PC niet werken. Hoe moet ik dat ingeven, zodat het op elke PC werkt?
 
Probeer het eens met deze
Code:
Sheets(Array("Sheet1", "Sheet2")).Select
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        CreateObject("Wscript.Shell").SpecialFolders(10) & "\" & "bestandsnaam.pdf" _
        , Quality:=xlQualityStandard, OpenAfterPublish:=False
 
dat betwijfel ik:

Code:
Sub snb667()
Sheets("sheet1").ExportAsFixedFormat xlTypePDF, CreateObject("Wscript.Shell").specialfolders(16) & "\bestandsnaam.pdf"
Sheets("sheet2").ExportAsFixedFormat xlTypePDF, CreateObject("Wscript.Shell").specialfolders(16) & "\bestandsnaam2.pdf"
End Sub

Bij nader inzien klopt WB's suggestie toch:

Code:
Sub snb6()
    Sheets.Select
    ActiveSheet.ExportAsFixedFormat xlTypePDF, CreateObject("Wscript.Shell").specialfolders(16) & "bestandsnaam.pdf"
End Sub
 
Laatst bewerkt:
Beide oplossingen lukken toch wel, heb ze uitgeprobeerd!

Alleen is er in beide gevallen geen optie om indien er al een bestand KostenBaten.pdf bestaat dat er een KostenBaten2.pdf gegenereerd wordt bv.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan