Macro pour sélectionner une zone à imprimer

Bonsoir le forum,

Je viens vers vous une nouvelle fois car je recherche une macro avec une boite de dialogue qui me demande de sélectionner une zone à imprimer.

D'avance je vous remercie beaucoup pour votre aide.

41libellule85.xlsm (8.47 Ko)

Bonsoir Libellule, bonsoir le forum,

Deux propositions avec les événementielles SelectionChange et BeforRightClick à placer dans l'onglet concerné. Tu choisiras celle qui te convient le mieux.

SelectionChange va agir dès que tu sélectionnes plus d'un seule cellule, conjointes :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Selection.Rows.Count = 1 Or Selection.Areas.Count > 1 Then Exit Sub
If MsgBox("Voulez-vous définit la sélection comme zone d'impression ?", vbYesNo, "ATTENTION !") = vbYes Then
    ActiveSheet.PageSetup.PrintArea = Selection.Address
End If
End Sub

Mais ça peut devenir vite gonflant si tu dois sélectionner souvent des plages...

Dans ce cas, la macro qui agit au clic du bouton droit sera plus appropriée. Tu sélectionnes la plage que tu veux définir et tu cliques avec le bouton droit dans n'importe quelle cellule à l'intérieur de la plage sélectionné :

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Selection.Areas.Count > 1 Then Exit Sub
If MsgBox("Voulez-vous définit la sélection comme zone d'impression ?", vbYesNo, "ATTENTION !") = vbYes Then
    ActiveSheet.PageSetup.PrintArea = Selection.Address
    Cancel = True
End If
End Sub

Bonjour ThauThème, le forum,

Un grand grand merci pour ta réponse, je vais regarder cela au travail, je te tiens au courant.

Re Bonjour ThauThème,

Un énorme merci car je viens d'essayer tes deux macros et c'est exactement ce que je recherchais.

Très bonne journée

Rechercher des sujets similaires à "macro selectionner zone imprimer"