A lire de toute urgence... Mes
oeuvres...

Accueil Word FAQ VBA solutions Comment, par macro, imposer d'imprimer sur l'imprimante par défaut ?
Comment, par macro, imposer d'imprimer sur l'imprimante par défaut ? PDF Imprimer Envoyer
Note des utilisateurs: / 3
MauvaisTrès bien 
WORD FAQ - VBA Solutions

 

Le VBA ne reconnaît que l'imprimante active. L'imprimante active est la dernière utilisée et non l'imprimante par défaut.

Il faut passer par des API. et ce n'est pas si simple ! Voici donc une macro écrite par Geo qui permet d'imprimer sur l'imprimante par défaut et remet l'imprimante active précédente.

L'inconvénient c'est qu'elle imprime tout le document sans autre question.

 

Declare Function GetProfileString Lib "kernel32" _ Alias "GetProfileStringA" _ (ByVal lpAppName As String, _ ByVal lpKeyName As String, _ ByVal lpDefault As String, _ ByVal lpReturnedString As String, _ ByVal nSize As LongAs Long

Sub ImprimerSurDéfaut()
'macro écrite par Geo
Dim MémoireImpr As String
  MémoireImpr = ActivePrinter
  ActivePrinter = ImprimanteWindows
  ActiveDocument.PrintOut
  ActivePrinter = MémoireImpr
End Sub
Private Function ImprimanteWindows()
Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim s1 As String
Dim r As Long
Dim Buffer As String
Dim NomImpr As String
Dim Spool As String
Dim Port As String
Buffer = Space(8192)
= GetProfileString("Windows""Device""", Buffer, Len(Buffer)) Debug.Print Buffer i = InStr(Buffer, Chr(0)) If i > 0 Then
  s1 = Left(Buffer, i - 1)
  j = InStr(s1, ",")
  k = InStr(j + 1, s1, ",")
  NomImpr = Left(s1, j - 1)
  If k > j Then
    Spool = Mid(s1, j + 1, k - j - 1)
    Port = Mid(s1, k + 1)
  End If
Else
   
' pas d'imprimante par défaut ?
   NomImpr = ""
End If
ImprimanteWindows = NomImpr & " on " & Port End Function

+/-
Ecrire un commentaire
Nom:
Email:
 
Titre:
 
:angry::0:confused::cheer:B):evil::silly::dry:
:lol::kiss::D:pinch::(:shock::X:side:
:):P:unsure::woohoo::huh::whistle:;):s
 
Saisissez le code que vous voyez.
+/- Commentaires
Ajouter un nouveau Rechercher

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

 

Recherche

SONDAGE

S O N D A G E

Johanna, étudiante en Master AIGEME (Culture et Métiers du Web) vous propose de répondre à ce sondage en ligne En vue de la rédaction de son mémoire.

Sujet : Le corps face à l'écran - les usages des NTIC par les patients et praticiens

Sondage entièrement anonyme ! Un grand merci pour votre participation

Formulaire de connexion



Qui est là ?

Nous avons 51 invités en ligne

Compteur de visites

Depuis janvier 2004
mod_vvisit_countermod_vvisit_countermod_vvisit_countermod_vvisit_countermod_vvisit_countermod_vvisit_countermod_vvisit_countermod_vvisit_counter
mod_vvisit_counterAujourd'hui150
mod_vvisit_counterHier1192
mod_vvisit_counterCette semaine6770
mod_vvisit_counterCe mois-ci23137