Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Choix pour impression

  • Initiateur de la discussion Initiateur de la discussion Rop
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

R

Rop

Guest
Bonjour à tous
J'ai besoin d'aide, je désire imprimer une sélection de cellules à l'aide d'un choix qui se trouve sur une autre feuille (voir exemple ci-joint). Déroulement souhaité : En cliquant sur le bouton Impression de la feuille "impression" je désire imprimer la plage de cellule A1 : D25 de la feuille A ou B. Le choix de la feuille à imprimer dépend de la cellule A1 de la feuille "Choix". Si la cellule A1=1 j'imprime la plage de la feuille A ou si la cellule A1=2 j'imprime la plage de la feuille B Merci d'avance pour votre aide.
 

Pièces jointes

Re : Choix pour impression

bonjour

ces quelques fonctions devraient t'éclairer !

Code:
Sub ImpressionApercu() 'ceci ouvre direct aperçu pour imprime
ActiveSheet.PageSetup.PrintArea = [A1].CurrentRegion.Address' <<< voir pour le champ cell.haut.gauche
ActiveWindow.SelectedSheets.PrintPreview
End Sub

Sub ImpressionLPT() 'ceci ouvre la boite de dialog imprimante
Feuil$ = "Feuil1" '<<<<<< nom de la feuille
Rang$ = "A1:B10"
LPTZoneImpression$ = Sheets(Feuil$).Range(Rang$) '<<<<<< range de données
LPTOrientationPage = xlPortrait '<<<<<< ou xlLandscape (paysage)
LPTSautDePage = 0 '<<<<<< ou 1 pour autorisation des sauts pages
MsgEntete$ = "bonjour" '<<<<<< voir avec message en entête ou pas =""
' init...
InitImprimante Feuil$, MsgEntete$, LPTZoneImpression$, LPTOrientationPage, LPTSautDePage
' boite de dialogue
Application.Dialogs(xlDialogPrint).Show
End Sub

Sub InitImprimante(Feuil$, MsgEntete$, LPTZoneImpression$, LPTOrientationPage, LPTSautDePage)
EspacH = 0: If MsgEntete$ > "" Then EspacH = 1
With Sheets(Feuil$).PageSetup
    .Zoom = False 'pas true sinon FitToPagesTall invalide
  If LPTSautDePage Then
    .FitToPagesTall = False 'permet le saut de page si trop haut
  Else
    .FitToPagesTall = 1 'impose sur la hauteur de la page
  End If
    .FitToPagesWide = 1 'impose sur la largeur de la page(toujours)
    .Orientation = LPTOrientationPage
    .CenterHorizontally = False
    .CenterVertically = False
    If LPTZoneImpression$ > "" Then .PrintArea = LPTZoneImpression$ 'sinon page entière
    .LeftHeader = MsgEntete$
    .CenterHeader = ""
    .RightHeader = ""
    .LeftFooter = ""
    .CenterFooter = ""
    .RightFooter = ""
    .TopMargin = Application.CentimetersToPoints(EspacH)
    .LeftMargin = Application.InchesToPoints(0)'<<< les (0) au choix !?(ici pas de marge)
    .RightMargin = Application.InchesToPoints(0)
    .HeaderMargin = Application.InchesToPoints(0)
    .BottomMargin = Application.InchesToPoints(0)
    .FooterMargin = Application.InchesToPoints(0)
End With
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
3
Affichages
258
Réponses
7
Affichages
701
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…