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

zone d'impression conditionelle

  • Initiateur de la discussion Initiateur de la discussion prisme3
  • 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 !

P

prisme3

Guest
Bonjour,
je cherche a créer un bouton qui lancerai l'impression de une ou plusieurs sheets en fonction de si certaines cellules sont remplies ou non.

Par exemple, ma sheet 1 comporte plusieurs pages (zones d'impression). Grâce à des fonctions IF (; ; 😉 le total TTC s'affiche en bas de telle ou telle page, suivant que certaines cellules sont pleines ou pas.

J'aimerais pouvoir, à l'aide d'un bouton, imprimer les pages jusqu'à celle qui a le Total TTC.

Merci
 
Re : zone d'impression conditionelle

Salut Prisme3 et Bienvenue🙂, le Forum

Je te conseil de Nommer ta cellule TTC

Insertion\Nom\Définir
Nom dans le Classeur :
TTC par exemple
Fait référence à :
Feuil1!$G$59 Toujours par Exemple
Ok

Ensuite
dans un module quelquonque

colle ce code
Code:
Sub EsSai()
ActiveSheet.PageSetup.PrintArea = "$A$1:" & "TTC"
End Sub
Et ta Zone d'impression sera A1:A59

Dans le ThisWorkbook colle ce Code
Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Call EsSai
End Sub
Ou tout simplement
Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
ActiveSheet.PageSetup.PrintArea = "$A$1:" & "TTC"
End Sub
Et voilà et...Juste à titre d'exemple 😛

EDITION: Salut Job75 🙂 et voilà un autre exemple etQuelExemple...Mazette 🙂

Bonne Journée
 
Dernière édition:
Re : zone d'impression conditionelle

Bonjour prisme3, Dull,

Ou cette macro qui passe en revue toutes les feuilles et cherche la cellule contenant le texte "TOTAL TTC" :

Code:
Sub Imprimer()
Dim w As Worksheet, total As Range
For Each w In Worksheets
Set total = w.Cells.Find("TOTAL TTC", LookIn:=xlValues)
If Not total Is Nothing Then
w.PageSetup.PrintArea = "$1:$" & total.Row
w.PrintOut
End If
Next
End Sub

A+
 
Dernière édition:
Re : zone d'impression conditionelle

Merci messieurs.
C'est du charabiah pour moi, mais je vais essayer.

J'ai trouvé une petite macro toute faite pour selectionner les feuilles a imprimer.
Du coup, il me manque juste une solution pour que les zones d'impression se definissent toutes seules en fonction de cellules remplies ou non.

Merci,
 

Pièces jointes

Re : zone d'impression conditionelle

J'ai réussi à composer ceci en croisant les infos que j'ai pu lire dans le forum.

If Range("H155") = 0 Then ActiveSheet.PageSetup.PrintArea = "$A$1:$H$88" Else If Range("H242") = 0 Then ActiveSheet.PageSetup.PrintArea = "$A$1:$H$175" Else If Range("H329") = 0 Then ActiveSheet.PageSetup.PrintArea = "$A$1:$H$262" Else ActiveSheet.PageSetup.PrintArea = "$A$1:$H$349"

pouvez vous me corriger? Ça bloque à: Else If Range("H242") = 0
 
Dernière modification par un modérateur:
- 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
12
Affichages
1 K
J
Réponses
2
Affichages
1 K
Julien_m
J
C
Réponses
8
Affichages
1 K
crowysterik
C
P
  • Question Question
Réponses
3
Affichages
828
patounez
P
T
Réponses
5
Affichages
2 K
Toto40
T
F
Réponses
9
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…