MACRO EXCEL impression classeur entier / feuilles précises - Logiciels - Windows & Software
Marsh Posté le 05-11-2008 à 23:43:24
moinschergratuit a écrit : Bonjour à tous, |
Nobody ?
Marsh Posté le 06-11-2008 à 07:49:29
moinschergratuit a écrit : Bonjour à tous, |
Pas vraiment le temps d'approfondir mais déjà avant de dire que tu ne veux pas utiliser l'enregistreur, mais celui-ci te démontrerait que tu fais une faute: ce n'est pas Feuill mais Feuil.Ensuite,
Sheets("Feuill1" ).Select
Sheets("Feuill2" ).Select
Sheets("Feuill3" ).Select
Sheets("Feuill4" ).Select
Sheets("Feuill5" ).Select
Sheets("Feuill6" ).Select
Sheets("Feuill7" ).Select
Sheets("Feuill8" ).Select
n'a pas vraiment de sens même pour quelqu'un n'y connait rien en macro.En effet, avec un minimum de réflexion, tu dis "sélectionner la feuille 1", ensuite la feuille 2...Tes feuilles seront bien sélectionnées mais une sélection chasse l'autre.Autrement dit, tu ne peux pas sélectionner toutes les feuilles en même temps avec cette macro.Tu peux le constater mamnuellement: pour enregistrer plusieurs feuillles en même temps, il faut utiliser Ctrl.
Marsh Posté le 06-11-2008 à 10:04:03
1. utilise l'enregistreur de macro (je vois pas pourquoi tu veux pas l'utiliser, c'est stupide)
2. sélection / impression / sélection / impression (cf. remarque ci dessus)
Marsh Posté le 06-11-2008 à 16:04:31
Ptit loup a écrit : 1. utilise l'enregistreur de macro (je vois pas pourquoi tu veux pas l'utiliser, c'est stupide) |
Oulala ! Excusez mon ignorance ! La nuit portant conseil, je me permets de revenir vers vous et tente de surpasser ma stupidité pour pouvoir échanger avec vous .
Je ne voulais tout simplement pas utiliser l'enregistreur de macro puisque ça me faisait lancer une impression (+ de 1000 pages) que je ne pouvais stopper avec l'imprimante...
Peu importe, voici les modifications que j'ai apporté avec votre aide précieuse. Néanmoins, il doit manquer quelque chose puisque ça ne m'imprime que les 10 premières ligne de chaque feuille...
Sheets("Côté Sarthe" ).Select
Selection.PrintOut Copies:=1, Collate:=True
Sheets("feuil1" ).Select
Selection.PrintOut Copies:=1, Collate:=True
Sheets("feuil2" ).Select
Selection.PrintOut Copies:=1, Collate:=True
Sheets("feuil3" ).Select
Selection.PrintOut Copies:=1, Collate:=True
Sheets("feuil4" ).Select
Selection.PrintOut Copies:=1, Collate:=True
Sheets("feuil5" ).Select
Selection.PrintOut Copies:=1, Collate:=True
Sheets("feuil6" ).Select
Selection.PrintOut Copies:=1, Collate:=True
Sheets("feuil7" ).Select
Selection.PrintOut Copies:=1, Collate:=True
Selection.PrintOut Copies:=1, Collate:=True
Sheets("Acceuil" ).Select
End Sub
Merci d'avance pour votre réponse
Cdt
Marsh Posté le 06-11-2008 à 16:11:06
Ca ne signifie pas forcément lancer une impression, tu peux très bien les mettre en attente... il suffit pour ça d'aller dans les propriétés de l'imprimante, et de suspendre tes impressions... rien de très sorcier, ne crois tu pas ?
Au pire, tu peux aussi débrancher ton cable réseau...
Tu peux aussi tester ça en faisant l'enregistrement de ta macro sur une page toute simple.. ce qui ne gacherait qu'une seule feuille (que tu peux réutiliser en brouillon, où ça peut aussi être une feuille que tu as besoin d'imprimer).
Je pense qu'il faudrait plutôt utiliser la fonction "activate" que "select"... ce n'est pas une "sélection réelle" que tu veux faire, mais bien te positionner sur ta feuille avant de lancer une impression.
Le copies=1 et collate = true sont inutiles...
utilises un simple "ActiveSheet.PrintOut" pour imprimer ta page active.
Marsh Posté le 06-11-2008 à 16:25:24
Ptit loup a écrit : Ca ne signifie pas forcément lancer une impression, tu peux très bien les mettre en attente... il suffit pour ça d'aller dans les propriétés de l'imprimante, et de suspendre tes impressions... rien de très sorcier, ne crois tu pas ? |
Ok, un grand merci , je m'en suis sorti ça fonctionne ;-)
A bientôt
Marsh Posté le 05-11-2008 à 22:08:16
Bonjour à tous,
J'ai besoin de vos services dans le cadre du reporting commercial que je suis en train de concevoir. Dans ce reporting,
1- des macros permettront d'imprimer une série de feuilles sélectionnées d'une part (ex: feuilles 1 à 8)
2- d'autres lançeront une impression du classeur entier (cad ttes les feuilles)
Pour les feuilles sélectionnées,voici la macro que j'ai mise : (mais ça ne marche pas)
Sub ImprAngers()
Sheets("Feuill1" ).Select
Sheets("Feuill2" ).Select
Sheets("Feuill3" ).Select
Sheets("Feuill4" ).Select
Sheets("Feuill5" ).Select
Sheets("Feuill6" ).Select
Sheets("Feuill7" ).Select
Sheets("Feuill8" ).Select
Selection.PrintOut Copies:=1, Collate:=True
Range("C21" ).Select
End Sub
Cependant, je ne veux pas utiliser l'enregistreur de macros ...
QQun pour relever le challenge ?
Merci
Moinschergratuit