Bloquer la commande imprime

  • Initiateur de la discussion Tana
  • Date de début
T

Tana

Guest
Bonjour à tous,

Est-il possible de bloquer la commande d'impression sur la barre de tache d'excel pour ne la permettre que via un bouton de macro qui dit à la fin '.print preview'

:S

Je vous demande cela car je voudrait forcer les gens à cliquer sur le bouton pour lancer les commandes de la macro! et je ne connais qu'une commande qui bloque totalement les impressions....

Merci,
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Bonjour

Tu as l'evenement

Private Sub Workbook_BeforePrint(Cancel As Boolean)

End Sub


Il te suffit de de créer un booleen public qui se met à true lors de ton clic sur ton bouton et cela donnerait donc




Private Sub Workbook_BeforePrint(Cancel As Boolean)

if ImpBool=true then
cancel=false
impbool=false
else
cancel=true
endif

End Sub
 
T

Tana

Guest
J'ai compris la démarche mais je crois que j'ai un problème pour faire ce que tu dis:


(Pascal76 écrit:


Il te suffit de de créer un booleen public qui se met à true lors de ton clic sur ton bouton et cela donnerait donc)

Il faut l'écrire avant l'action print preview? Là je pêche...

Si j'ai:

sub macro1()

bla bla
bla
bla

Activesheet.printpreview

bla bla
bla bla

end sub

Comment j'insère ton action?

Merci,
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re

En debut de module

Public ImpBool as Boolean

sub macro1()

bla bla
bla
bla

ImpBool = True
Activesheet.printpreview

bla bla
bla bla

end sub

et dans le ThisWorkbook

Private Sub Workbook_BeforePrint(Cancel As Boolean)

if ImpBool=true then
cancel=false
ImpBool =false
else
cancel=true
endif

End Sub

Bon courage
 
T

Tana

Guest
Bon j'ai tout essayé ça ne marche pas (j'ai m^me fait un exemple sur un fichier bidon)
-> soit rien s'imprime ni depuis bouton macro ni depuis commandes excel,
->soit tout s'imprime??

je comprend pas ?
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re

Un fichier en exemple

Il ne fallait pas mettre impbool = false à l'endroit où je t'avais dit

Bon courage

[file name=tana.zip size=8248]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/tana.zip[/file]
 

Pièces jointes

  • tana.zip
    8.1 KB · Affichages: 23
T

Tana

Guest
Je sais bien que c'est bizarre car sur le fichier de pascal que j'ai téléchargé ça marche impec, sur les premiers essais ca marchait pas,OK, mais j'avais pas ce message.
Cependant, je m'escrime à écrire ImpBool mais excel me le corrige automatiquement en impbool. Et pourtant je suis même allé jusqu'à faire un copier/coller des commandes de pascal dès fois que j'ai la berlue et ça fait pareil?!
Je me l'explique pas!!!
:ermm:
 
T

Tana

Guest
Je peux pas t'envoyer le fichier, il est bien trop gros.
Bon hier je t'ai dit que j'avais impbool, ce matin j'ouvre mon fichier et j'ai ImpBool. La nuit porte conseil??

Cependant, j'ai voulu coller les éléments qui nous intéressent sur un autre fichier tels qu'ils sont écrits sur mon gros fichier pour te le soumettre et il n'y a aucun bug ?! (comme sur ton fichier d'ailleurs!).

Y'a peut être un truc, quand je touche aux écritures de mon projet j'ai un message qui me dit que ça va réinitialiser mon projet est ce que je veux continuer? bon OK, et quand je valide, je passe aussitot sur l'apercu avant impression. Et ensuite j'ai un message quand je veut imprimer, j'ai un message qui me dit impossible d'exécuter en tache en mode arrêt , Et je peux rien faire!!!
Bref y'a un truc dans mon projet qui bloque totalement??
C'est la merde!!

Bon je te joins une version très très expurgée de mon fichier. Mais sur c'est exemple ca marche ah la la! [file name=pascal.zip size=14170]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/pascal.zip[/file]
 

Pièces jointes

  • pascal.zip
    7.1 KB · Affichages: 15
  • pascal.zip
    7.1 KB · Affichages: 11
  • pascal.zip
    7.1 KB · Affichages: 15

Abel

XLDnaute Accro
Bonjour Pascal, Tana,

Je me permets à nouveau, Pascal doit être sur le pot (lol !) ou à l'apéro (pardon Pascal, elle était facile, je l'admets).

Si tu as ces messages, c'est qu'une macro est en cours.

Regarde dans tous tes modules, feuilles, etc s'il n'y a pas une ligne surlignée en jaune.
Sinon, fais F8 (mode pas à pas). VB de dira peut être où il en est.

Regarde aussi les macro évennementielles que tu as. Fais nous en la liste (donne nous juste la première ligne de chaque) s'il y a plus de macro que celles de l'exemple transmis.

Qu'y a t'il dans Workbook_Activate ?


Abel.
 
T

Tana

Guest
La ligne surlignée c'est justement :private Sub Workbook_BeforePrint(Cancel As Boolean)
Et le 1er blocage c'est le nom ambigu 'ImpBool' puis j'ai 'impossible d'effectuer le code en mode arrêt'
Et là, je peux plus rien faire, tout est bloqué. Je vais m^me te dire que Excel patine dans la choucoutre car calcule et je dois le fermer 'méchamment'
Quant à mon workbook.activate, je met des mots de passe de protection à mes feuilles 'maitresses' et je protège mon classeur.

Moi, j'y comprend rien car quand j'ai essayé le 1er code de pascal, c'est me faisait pas ce blocage et sa correction a consisté à supprimer une ligne!
Moi, j'ai rien écris de plus car j'ai finalisé ce projet là et j'en suis juste aux protections, il me restait plus que ce blocage des impressions à faire pour dque ce soit ''parfait''
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Bonjour

Bon je passe en coup de vent

Tana essaie carrément de remplacer ImpBool Partout par un autre nom de variable du genre ImpressionBool ou toto ou ce que tu veux mais change le partout dans la déclaration Public dans le before_print et dans la macro qui lance le preview (tu as peut-être un autre nom identique dans ta macro qui le gène)

Si cela ne marche toujours pas il faudrait un fichier qui bloque sinon on ne pourra pas avancer

Par contre je ne pourrais regarder qu'à partir de 17h00

L'apéro dure longtemps aujourd'hui :) :) :)

@ +
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 922
Messages
2 093 644
Membres
105 775
dernier inscrit
assen