Imprimer sans couleurs
Bonjour à tous,
Merci pour ce forum.
J'ai un classeur excel avec certaines cellules colorées. Je ne souhaite pas que ce fond apparaisse à l'impression.
J'ai farfouillé un peu le net. J'ai trouvé cette formule. Merci à celui qui l'a partagée.
Sub impressionNoirEtBlanc()
With Worksheets(ActiveSheet.Name)
.PageSetup.BlackAndWhite = True 'paramétrage N&B
.PrintOut 'imprime
.PageSetup.BlackAndWhite = False 'réinitialisation
End With
End Sub
Ça marche très bien. Cependant mon classeur a plus de 50 feuilles. Je peux pas me permettre de faire ça pour chacune. Y aurait il un moyen de mettre un bouton par exemple sur la 1ere feuille, et que la macro marche sur tout le classeur ?
2ème chose, je souhaiterais qu'il y ait un aperçu avant impression dans la macro.
Merci beaucoup de votre aide.
VIK
bonjour,
Essaie un truc comme ça :
Sub impressionNoirEtBlanc()
For i = 1 To Worksheets.Count
With Worksheets(i)
.PageSetup.BlackAndWhite = True 'paramétrage N&B
.PrintOut Preview:=True 'imprime avec aperçu
.PageSetup.BlackAndWhite = False 'réinitialisation
End With
Next
End Sub(Non testé)
A+
Salut Galopin !
Merci de ta réponse
Il y a un petit souci, les aperçus se lancent les uns après les autres.
Page 1 aperçu - > impression, puis page 2 -> impression etc.
Si tu pouvais me régler ca
Merci encore
Bon dimanche
Euh... ça je crois pas.
Les aperçus te donnent la possibilité de choisir onglet par onglet si tu imprimes ou pas, mais pas de choisir si tu ne veux imprimer que la première page du premier onglet et la 5ème du 2ème onglet.
C'est à toi de déterminer la zone d'impression dans la mise en page de chaque onglet. (avant de lancer la macro)
par exemple si tu sais que dans chaque onglet seule la partie graphique t'intéresse. A toi de déterminer une zone d'impression "graphiques" et une autre pour les fois ou tu préfères imprimer les données brutes par exemple. Mais il ne me semble pas possible de te laisser la possibilité en mode aperçu de choisir de n'imprimer qu'1 page sur 4 du même onglet.
A+
Re Galopin
Je pense qu'on s'est pas compris.
Deja mettons au clair le vocabulaire, parce que je suis vraiment pas calé.
Classeur : c'est bien tous le fichier excel ?
Feuille : c'est les petits onglets en bas
Onglet : je sais pas c'est quoi
En fait quand je lance ta macro, il y a uniquement l'apercu de la page en question qui s'affiche. Puis quand je met imprimer, ca passe a l'apercu de la page 2. Etc.....
Si on met de coté la macro, quand je clique sur imprimer tout le classeur, j'ai bien dans le même apercu, toutes les feuilles du classeur. Je clique une fois sur imprimer et tout s'imprime.
Avec ta macro faut faire l'opération page après page.
J'essaie d'être le plus clair possible :/ J'espere que tu comprends
Merci encore
EDIT : En fait, pour être clair, je souhaiterais avoir le même résultat que quand tu cliques sur "imprimer" puis "imprimer tout le classeur". Avec toutes les feuilles de calcul numérotées dans la même apercu. Ce n'est pas du tout une question de zone d'impression. Les zones d'impression sont déjà définies pour chaque feuille de calcul dans mon fichier.
Non ça ce n'est possible. Excel ne fonctionne pas comme ça.
Un fichier et un classeur du point de vue de Windows, c'est la même chose. Mais une fois que tu a ouvert ton classeur en principe on ne parles plus de fichier : Tu as un classeur de plusieurs feuilles. C'est tout.
Une feuille et un onglet désigne effectivement la même chose :
En revanche une feuille ou un onglet peut comporter plusieurs pages qu'on ne peut pas afficher simultanément dans un aperçu avant impression.
On ne peut encore moins afficher simultanément un aperçu de plusieurs feuilles différentes
A+
Bonjour,
Je crois qu'on s'est toujours pas compris Galopin.
Je t'ai fais un screen.
Evidemment les feuilles ne peuvent pas s'afficher simultanément dans le même aperçu. J'en ai une soixantaine.
Mais elles sont bel et bien présentes dans l'aperçu, avec en bas la possibilité de les faire défiler dans le même apercu.
En fait je souhaite pouvoir imprimer tout le classeur d'un coup. (comme sur l'image).
La macro que tu m'as proposé ne permet pas cela. On ne peut uniquement voir une seule page, valider son aperçu, et appuyer sur imprimer. Puis la fenêtre d'aperçu se ferme, puis une nouvelle s'ouvre pour la feuille suivante. C'est assez laborieux et lent et il faut donc appuyer sur "imprimer" autant de fois qu'il y a de feuilles dans mon classeur.
Sur mon image, tu vois qu'il y a un aperçu pour toutes les feuilles, et on clique une seule fois sur imprimer pour tout le classeur.
En fait je souhaite une macro qui permet de faire pareil que si on clique sur fichier imprimer. En noir et blanc évidemment
J'espère que ce screen nous permettra de parler de la même chose
Merci Galopin
Ah ! Ok...
Sub impressionNoirEtBlanc()
For i = 1 To Worksheets.Count: Worksheets(i).PageSetup.BlackAndWhite = True: Next
ActiveWorkbook.PrintOut Preview:=True
For i = 1 To Worksheets.Count: Worksheets(i).PageSetup.BlackAndWhite = False: Next
End SubA+
Comment tu fais. . . . . Excellent c'est exactement ce que je voulais.
MERCI beaucoup Galopin
Galopin, je reviens vers toi.
J'ai finalement trouvé un moyen sans utiliser de macro.
(Fichier -> imprimer -> tout le classeur -> mise en page -> feuille -> noir et blanc)
J'imagine que c'est ce que faisait ta macro.
Par contre gros souci :/ Toutes les cases qui avaient une mise en forme conditionnelle (si = 0, alors texte blanc), ben ca sort à l'impression ! Donc j'ai beaucoup de "0" un peu partout dans mes tableaux ...
Tu aurais une solution ?
Merci encore