Impression à partir d'Excel VBA
En essayant d'imprimer la même feuille excel un certain nombre de fois (e.g 100) avec une cellule incrémenté à chaque fois (e.g cellule 4F).
J'ai essayé d'utiliser
Workbook_BeforePrint
pour incrémenter la cellule, mais il nécessite une interaction avec le "sélectionner l'imprimante" boîte de dialogue pour chaque feuille imprimée.
Serait-il possible de faire quelque chose comme:
a = getIntegerUserInput()
for i in 1..a
increment 4F with one
print the sheet suppressing the "select printer" dialog
end for
Acclamations
Vous devez vous connecter pour publier un commentaire.
Avez-vous sélectionné une imprimante par défaut?
J'ai utilisé ceci:
De l'imprimer en 4 exemplaires incrémentation de la valeur de la cellule A1 à chaque fois sans m'invite pour les réglages, ou de sélection de l'imprimante.
Pour imprimer une feuille, vous pouvez utiliser ce genre de code (en supposant que vous savez sur l'imprimante que vous souhaitez imprimer) à l'aide de
PrintOut
:Par conséquent, vous pouvez créer une boucle pour augmenter une cellule et imprimer votre feuille de calcul avec l'incrément.
Par la manière, vous pouvez le faire en utilisant
Before_print
et si vous ne voulez pas afficher la boîte de dialogue imprimer, vous pouvez définirCancel
pour Faux tout en appelant la procédurePrivate Sub Workbook_BeforePrint( Cancel As Boolean)
(réf sur MSDN)Vous pouvez également lire ce fil pour empêcher l'affichage de la boîte de dialogue d'impression: Comment éviter la boîte de dialogue d'impression lors de l'utilisation d'Excel méthode PrintOut.
[MODIFIER] voir Seyren de réponse pour une solution de travail sur ce que vous voulez. Pourtant, prendre soin sur les performances si vous vraiment voulais boucle 100 fois.