Zone d'impression variable.

  • Initiateur de la discussion Brigitte
  • Date de début
B

Brigitte

Guest
Bonjour le forum,



Chaque mois j'ai le meme document à imprimer,
mais certaine fois mon documents fait plusieurs pages,
d'autre fois une page.
Est-ce possible par une macro que la zone d'impression
se sélectionne automamtiquement avant l'impression?

Car j'ai paramétré manuellement pour 10 pages,
mais quand mon document ne fait que 3 pages,
celà me fait sortir 7 pages suplémentaires.

Merci

@brigitte@
 
A

A_Binouze_Drinker_Among_Others

Guest
bonjour

tu peux utiliser la procédure évènementielle suivante :
Private Sub Workbook_BeforePrint(Cancel As Boolean)
ActiveSheet.PageSetup.PrintArea = Range("A1").CurrentRegion.Address
End Sub


tu dois l'inscrire dans la feuille de code " ThisWorkbook"

bye
stephane

ps : pour info, je suis de retour de 3 semaines vacances
 
B

Brigitte

Guest
Bonjour Stéphane, bonjour le forum,

J'ai essayé ton code, mais ça ne fonctionne pas,
celà m'inprime que la case A1, j'ai beau redéfinir
la zone d'impression ça ne marche pas.

Merci quand même.

@brigitte@
 
J

Jean-Marie

Guest
Bonjour, tout le monde

Tu n'as pas besoin de macro VBA, pour définir une zone d'impression.

Pour déclarer une zone, va dans le menu Insertion/Nom/définir. Dans la boîte de dialogue qui s'affiche, tape zone_d_impression dans le champ du haut.

Maintenant sa ce corse, dans le champ du bas de cette même boîte de dialogue, tu dois déterminer la longueur de la plage d'impression à l'aide de deux formules.

Regarde le fichier qui illustre mon commentaire.

Dans la formule en G1, la plage de recherche peut être allégé, en fonction du nombre maximum de ligne à imprimer.

@+Jean-Marie
 

Pièces jointes

  • zone_d_impression.xls
    17.5 KB · Affichages: 101
  • zone_d_impression.xls
    17.5 KB · Affichages: 100
  • zone_d_impression.xls
    17.5 KB · Affichages: 101
P

Pierre

Guest
Bonsoir tous,
une petite idée en passant. Pourquoi ne pas demander à ta macro de sélectionner la zone en cours via Edition - Atteindre - Cellule.
Ceci te permettrait peut-être de n'imprimer que la sélection qui elle sera modifiée par la quantité de données de ta feuille.

@+

Pierre
 
A

A_Binouze_Drinker_Among_Others

Guest
bonjour


c'est parceque ton tableau ne commence pas en A1.
remplace alors Range("A1").CurrentRegion.Address par activesheet.usedrange.address


ou donne directement la plage de cellules du genre range("A1:F30).address
 
C

catherine

Guest
bjr le forum
voila mon problème
j'aimerais imprimer à la fin du mois seulement les colonnes qui m'interesse
(environ une trentaine) mais surtout imprimer seulement les lignes non vides avec toujours la colonne B (nom des patients)
j'espère être clair...
merci d'avance
 

Discussions similaires

Réponses
6
Affichages
742

Statistiques des forums

Discussions
314 653
Messages
2 111 578
Membres
111 205
dernier inscrit
Adrien25