imprimer un userform directement en pdf

patricktoulon

XLDnaute Barbatruc
bonjour a tous
on trouve diverses solutions pour imprimer un userform en pdf
aujourd'hui avec Windows 10 nous avons le WINDOWS PDF PRINTER ET !!!! nous pouvons l'avoir avec Windows 7 sous un autre nom(voir capture plus bas)
et il y a moult applications (virtual printer pdf) en gratuiciel sur la toile

le seul problème avec l'impression directe
c'est que la fonction printform fait appel a l'imprimante par défaut de windows ET NON !!! celle par défaut de excel
et bien voici une petite sub qui pourrait bien vous rendre service
elle vous propose tout les (virtual pdf printer) installées

VB:
Sub impressionForm(usf)
    Dim x, tbl(), i, texte
    x = 0
    With CreateObject("WScript.Network")
        Set imprimantes = .EnumPrinterConnections
        For i = 0 To imprimantes.Count - 1
            If InStr(LCase(imprimantes(i)), "pdf") > 0 Then ReDim Preserve tbl(0 To x): tbl(x) = imprimantes(i): texte = texte & x & "--" & imprimantes(i) & vbCrLf: x = x + 1
        Next
        i = InputBox("choissisez  une imprimante " & vbCrLf & texte, "impression userform")
        If i <> "" Then
            .SetDefaultPrinter tbl(Val(i))
            usf.printform
        End If
    End With
End Sub
l'argument usf etant un object userform

un petit exemple
dans le userform un bouton
VB:
Private Sub CommandButton1_Click()
impressionForm Me    'me.printform
End Sub
résultat
Capture.JPG


taper le chiffre correspondant a celle que vous désirez

voila plus besoins de capturer paster sur sheets etc......

testé sur 2007 et 2013 windows 7 et 2016 pc portable windows 10
a+
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas