Print Userform en paysage

Salut,

Est-ce que je peux imprimer mon userform en paysage avec un bouton?

Je suis capable de la faire en portrait avec la fonction .printform, mais je n'ai pas trouvé avec paysage.

Je vous joint mon fichier.

Merci Beaucoup.

Salut le Forum

Une façon pour imprimer un UserForm

Private Declare Sub keybd_event Lib "user32" ( _
        ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, _
        ByVal dwExtraInfo As Long)

Private Sub CommandButton1_Click()
    Dim Ws As Worksheet

    'Copie d'écran de la forme active
    keybd_event vbKeySnapshot, 1, 0&, 0&
    DoEvents

    'Ajoute une feuille pour coller l'image de la forme
    Set Ws = Sheets.Add
    Ws.Paste

    'impression centrée dans la page
    With Ws
        .PageSetup.CenterHorizontally = True
        .PageSetup.CenterVertically = True
        .PrintOut
    End With
End Sub

Mytå

Salut Mytå,

J'ai essayé cette syntaxe mais j'ai un message d'erreur. Je joins le printscreen. J'ai lu sur le web qu'il faut mettre le début de la

syntaxe ds un module et le reste sur un bouton. Mais j'ai quand même le message d'erreur.

Merci

message d erreur

Re le Forum

Les joies des applications 64 bits . . .

Private Declare Sub keybd_event Lib "user32" ( _
        ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As LongPtr, _
        ByVal dwExtraInfo As LongPtr)

Mytå

Salut Mytå,

J'ai toujours le même message d'erreur. Je vais installer la version 32 bits sur mon PC. Ça devrait fonctionner.

Merci beaucoup de ton aide.

Salut Tous,

J'ai trouvé aussi comment imprimer en PAYSAGE un UserForm.

Testé avec Office 2013 x32bits, pas testé avec le x64 bits.

Je vous joint le fichier.

Merci

Bonjour j'arrive un peu tard sur ce forum je suppose. Malgré ma petite expérience et avec toute modestie je me permets d'apporter une solution pour ton message d'erreur.

au lieu de :

Private Declare Sub keybd_event Lib "user32" ( _
        ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As LongPtr, _
        ByVal dwExtraInfo As LongPtr)

il faut :

Private Declare PtrSafe Sub keybd_event Lib "User32" (ByVal bVk As Byte, _
ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)

cela te permettra d'utiliser aussi bien en 32 bits qu'en 64.

Bonne réception.

Bonjour PapyBoyington,

Je garde le code en banque.

Merci.

Rechercher des sujets similaires à "print userform paysage"