Chnager l'imprimante par défaut

Résolu
Signaler
Messages postés
14
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
27 juin 2008
-
Messages postés
14
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
27 juin 2008
-
Bonjour, j'ai un problème avec ma macro.en fait elle fonctionne bien mais l'imprimante par défaut est une imprimante pour étiquette.donc il me faudrais un code pour changer l'imprimante.je vous donne un bout de mon code pour comprendre ce que j'ai fait.
Merci beaucoup.
Option Explicit
Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
 (ByVal hwnd As Long, ByVal lpOperation As String, _
 ByVal lpFile As String, ByVal lpParameters As String, _
 ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
 
 
 Sub Imprim()
 Dim reponse As String
 reponse = InputBox("Numéro d'identification", "Saisir le numéro")
    If reponse = "" Then
        Call MsgBox("aucun numéro n'a été entré", , "Erreur")
  
        ElseIf reponse = "01055330" Then
            Dim NomFichier1
                NomFichier1 = "D:\Data\fourlud\My Documents\notices\2553.804_11_28.pdf"
                If Dir(NomFichier1) <> "" Then
                    ShellExecute 0, "print", NomFichier1, "", "", 0
                End If
End Sub

7 réponses

Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
48
salut,

effectivement tu imprimes (par shellexecute) sur l'imprimante par défaut donc pas forcément la bonne...

http://www.codyx.org/snippet_choisir-imprimante-sans-boite-dialogue_495.aspx#1568
++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
14
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
27 juin 2008

Merci de t'être penché sur mon cas, mais je ne comprend pas très bien où je dois mettre ce code et ce que je dois enlever dans le mien.
Il faut m'excuser je débute, j'ai appris y'a une semaine!!
Merci
Messages postés
14
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
27 juin 2008

J'ai essayé ce que tu m'a proposé é j'ai un message d'erreur (jsui tro nul!!)
"type défini par l'utilisateur non défini" cette erreur est sur la ligne : Dim oTestPrinter As Printer
Voila c'est genti de me repondre merci.
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
48
tu es bien en VB6 ??

Vous êtes ici : [infomsg.aspx Thèmes] / [infomsgf_VISUAL-BASIC_1.aspx Visual Basic 6] / [infomsgt_DIVERS_220.aspx Divers] / [infomsgt_GENERAL_222.aspx General] / Chnager l'imprimante par défaut

le code est à copier dans un module standard
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
14
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
27 juin 2008

oui, oui j'ai visual Basic 6.3!
Heuuu, c'est quoi un module standard?je l'ai copier tout en haut, avant Sub imprim
et je n'est rien changer au code.
merci
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
48
VB6.3 c'est VBA, pas VB6 !

néanmoins l'objet printer doit aussi y être...
Messages postés
14
Date d'inscription
jeudi 26 juin 2008
Statut
Membre
Dernière intervention
27 juin 2008

Ok bin merci quand même , désolé de mettre tromp.
Mais bon je fais essayé de trouver un autre moyen parce que cela ne fonctionne pas.
Encore merci et bonne journée.