Votre question

[VBA] macro raccourci d'impression

Tags :
  • Programmation
Dernière réponse : dans Programmation
21 Avril 2006 08:47:13

Bonjour. Voila dans une marcro j'ai le code ci-dessous ce code m'affiche directement les propriétés de l'imprimante et ensuite imprime mais lorsque je clique sur annuler, dans la fenetre des propriéte, l'impression se lance comme meme.

Sub test()
With ActiveDocument
.PrintSettings.Printer.ShowDialog
.PrintOut
End With
End Sub

je voudrais savoir comment prendre en compte le boutton annuler pour que l'impression ne se lance pas.

merci

Autres pages sur : vba macro raccourci impression

26 Avril 2006 11:15:42

bon g sa:

Public Sub test()

On Error GoTo ErrorHandler

With ActiveDocument
.PrintSettings.Printer.showdialog

If vbNo = MsgBox("Imprimer ce document ?", vbYesNo) Then
GoTo ErrorHandler
Else
.PrintOut
End If

End With

ErrorHandler:
End Sub

et sinon est-ce qu'il est possible de creer une sorte de plugins qui créerait un icone dans un programm de type corel draw par example et qui exécuteré ma macro lorsque je cliquerais dessus .
car ce programme doit être mit sur plusieurs poste chez des clients qui installeront eux même le logiciel donc lors de l'installation de corel il faut que l’icône apparaisse déjà c’est pour cela qu’il me faut savoir comment faire sa, j’ai pensé à faire une sorte de plugins ou de dll mais je ne vois pas comme faire.

merci
26 Avril 2006 19:48:59

Salut,
Pour afficher tu peux mettre juste:
Reponse1 = Application.Dialogs(xlDialogPrint).Show

Et pour installer tes macros chez tes clients, tu peux exporter ton code VBA en sous forme de fichier *.bas, ou alors créer une macro complémentaire et le mettre en fichier *.xla
Je connais pas la démarche, mais chez sur google et tu auras des réponses.
Contenus similaires
27 Avril 2006 08:31:03

Ton code pour afficher ne fonctionnne pas et c'est un code pour exel si jme troupe pas alors que moi je suis dans corel draw 12.
En plus je ne pense pas que cette méthode soit la plus approprié à ce que je dois faire mais merci comme même.
27 Avril 2006 18:05:56

ah désolé.
je connais corel draw, donc je peux pas t'en dire plus, mais peut-être que sur le principe et en cherchant un peu tu trouveras quelque chose.
28 Avril 2006 11:46:02

sinon g réussi a crrér une commande bar mais jarrive pas a mettre de bouton dedans :

Sub Personnalisé()

With CommandBars.Add("print", cuiBarTop, True)
.Visible = True
.Controls.Add ???
end with
end sub

comment on fait pour y ajouter un bouton ?

31 Mai 2006 10:03:16

voila le code


Public Sub Installation_de_la_barre()

CommandBars.Add "lancement en gravure", cuiBarTop, False 'crée la toolbar
CommandBars.Item("lancement en gravure").Visible = True

With CommandBars.Item("lancement en gravure").Controls.AddCustomButton("Macros", "gravure.Module.lancement")
.Caption = "Print" 'crée le bouton avec les propriétés adéquates
.Visible = True
.SetCustomIcon ("C:\Program Files\Corel\Corel Graphics 12\Draw\GMS\laser.ico") ' chemin d’accès de son propre icône.
.ToolTipText = "envoie en gravure"

End With
End Sub


Sub lancement()
'macro qui permet d'ouvrir directement les propriétés de l'imprimante pour ensuite imprimer le document.

On Error GoTo ErrorHandler 'renvoie à ErrorHandler s'il n'y a pas de document ouvert.


x = "L-Solution" ' nom de l’imprimante laser
' Faire en sorte que l’imprimante laser "L-Solution" soit celle par défaut
ActiveDocument.PrintSettings.SelectPrinter (x)



With ActiveDocument
.PrintSettings.Printer.showdialog 'ouvre la boite de dialogue des propriétés de l'imprimante.

If vbNo = MsgBox("Lancer en gravure ce document ?", vbYesNo) Then 'demande confirmation pour l'envoie en gravure.
GoTo ErrorHandler 'reponse "annuler" revoie a ErrorHandler
Else
.PrintOut 'réponse "ok" et lance la gravure
End If

End With
ErrorHandler: 'arrêt de la macro lorsqu'il n'y pas de document ouvert ou si la réponse est "annuler"
End Sub
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS