impression conditionnel

wilbur11

XLDnaute Junior
bonjour je suis très debutant dans la confection de macro mais votre aide m'est très précieuse.

Je voudrais modifier ma macro pour que je puisse imprimer un range en une copie plutot que la feuille au complet en 1 ou 2 copies.

voici ce que j'ai comme code acutellement:
If Range("b7") = "" Then ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True Else ActiveWindow.SelectedSheets.PrintOut Copies:=2



Je ne sais pas quoi inscrire pour que: si b7="" il imprime a1:O41 sinon il imprime a1:W41.

Merci encore une fois de votre aide.
 

wilbur11

XLDnaute Junior
Re : impression conditionnel

Bonjour à toi Hulk,

Je vais plutot te joindre mon fichier, tu comprenderas que je veux imprimer 2 ou 3 copie de mon bordereaux de dépot selon si j'ai inscris quelque chose en "B7". Merci.

Pour une page 8½" X 14", mon affaire marche pour l'impression. donc, je veux que si il y a quelque chose d'écris en B7 Excel selectionne A1 à O41 puis l'imprime ou bien s'il ya quelque chose d'inscris en B7 Excel selectionne A1 à W41 (ce qui va donner 2 feuilles).

Merci beaucoup pour ton aide.

Wilbur
 

Pièces jointes

  • bordereaux de dépot_TEST.zip
    15.8 KB · Affichages: 15

Staple1600

XLDnaute Barbatruc
Re : impression conditionnel

Bonsoir Wilbur11, Hulk, le fil, le forum


Une façon de faire

Code:
Sub a()
With ActiveSheet
.PageSetup.PrintArea = IIf(.[B7] = "", "$A$1:$O$41", "$A$1:$W$41")
.PrintPreview
End With
End Sub
Remplacer .PrintPreview par .PrintOut 1 pour imprimer.
 
Dernière édition:

Discussions similaires

Réponses
7
Affichages
360

Statistiques des forums

Discussions
312 500
Messages
2 089 010
Membres
104 004
dernier inscrit
mista