UserForm format paysage

Bonjour,

Question basique j'espère mais je n'arrive pas à trouver le code permettant d'imprimer un UserForm au format paysage !

Que faut il rajouter au code suivant?

Private Sub CommandButton2_Click()

UserForm1.PrintForm

End Sub

Merci d'avance.

Bonjour,

un fichier à tester

amicalement

Pierrot

169imprim-userform.zip (13.41 Ko)
Private Sub CommandButton2_Click()
UserForm1.PrintForm
 .PageSetup.Orientation = xlLandscape      'Paysage
End Sub

Pierrot

Bonsoir Pierrot,

J'avais essayé ce code mais il me met un message d'erreur:

"Erreur de compilation

Référence incorrecte ou non qualifiée"

Je précise que le bouton "imprimer" est dans le UserForm même et non dans une feuille Excel

J'ai essayé sans le point devant PageSetup mains sans succès non plus !!


Sans le point ça me met "Variable non définie" !!

Bonsoir,

Je crois qu'il faut que tu regardes du côté des fonctions API pour pouvoir envoyer cette commande à l'imprimante. Il n'y a pas de réglage d'impression pour un objet Userform et les réglages de mise en page d'Excel ne le concernent pas.

L'autre solution consiste à copier-coller une image du Userform sur la feuille, pour laquelle tu pourras régler l'orientation. Mais ce collage d'une image écran fait aussi appel à une fonction API.

Ou bien tu règles manuellement ton imprimante en "paysage" avant de lancer l'impression.

Cordialement.

Bonjour fairway

voir fichier joint

aperçu avant impression de l'userform

559fairway.xlsm (20.01 Ko)

Bonsoir Bob

Merci pour ce code qui fonctionne très bien..

Fallait y penser !!

Si je rencontre un problème je sais vers qui me tourner !

Cordialement.


Merci à MFerrand pour ta contribution..

Bonjour Suite à ce que vous m'avez proposé j'ai trouvé ce code Par contre la 1ère ligne qui commence par private déclare Je ne comprends pas Il me met que ce n'est pas compatible Il faut que je le mette à jour mais comme je débute je ne vois pas trop ce que je dois faire Pouvez-vous m'aider s'il vous plaît

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()
    keybd_event vbKeySnapshot, 1, 0&, 0&                        'Copie d'écran de la forme active
    Application.ScreenUpdating = False                          'désactive le rafraichissement de l'écran
    DoEvents                                                    'ne pas faire d'événement
    Application.ScreenUpdating = False
    Set Ws = Sheets.Add                                         'Ajoute une feuille pour coller l'image de la forme
    ActiveSheet.Name = "imprimm"                                 'renommer nouvelle feuille excel
    Sheets("imprimm").Paste                                      'coller imprim ecran sur feuille excel
    Sheets("imprimm").PageSetup.Orientation = xlLandscape        'paysage
    Me.Hide                                                     'cacher userform
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    With Sheets("imprimm")
        .PageSetup.CenterHorizontally = True                    'impression centrée dans la page
        .PageSetup.CenterVertically = True                      'impression centrée dans la page
        .PageSetup.LeftMargin = Application.InchesToPoints(0) '.708661417322835)
        .PageSetup.RightMargin = Application.InchesToPoints(0) '.708661417322835)
        .PageSetup.Zoom = False                                 'ajuste l'image sur la page
        .PrintPreview                                           'apercu avant impression

        Application.DisplayAlerts = False                       'enléve les messages d'alerte
            .Delete                                             'suppression de la feuille imprim
        Application.DisplayAlerts = True                        'remet les messages d'alerte
    End With
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
        Application.ScreenUpdating = True                       'réactive le rafraichissement de l'écran
    Me.Show                                                     'affichage de l'userform

End Sub
71fairway.xlsm (21.31 Ko)
Rechercher des sujets similaires à "userform format paysage"