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