Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème avec ActivePrinter

2 réponses
Avatar
obelix1990
Bonjour;

J'ai essayé ce petit code dans une macro sur excel (2003):


Code :
MsgBox Excel.Application.ActivePrinter
Excel.Application.ActivePrinter = "\\twist\DSc435 on Ne03:"
MsgBox Excel.Application.ActivePrinterCette petite macro fonctionne bien
dans excel. Je voudrais utiliser ce même code dans access (2003), mais, j'ai
l'erreur suivante:

Run time error '1004'
Method 'ActivePrinter' of object'_Application'failed à la ligne
Excel.Application.ActivePrinter = "\\twist\DSc435 on Ne03:"

Pouvez-vous m'aider?

Merci

PS la macro suivante fonctionne aussi sous word


Code :
MsgBox Excel.Application.ActivePrinter
ActivePrinter = "\\twist\DSc435 on Ne03:"
MsgBox Word.ActivePrinter

2 réponses

Avatar
CErnst
Il n'y a pas de propriété ActivePrinter dans Access
Regardez dans l'aide les propriétés Printer et Printers de l'objet
Application

"obelix1990" a écrit dans le message
de news:
Bonjour;

J'ai essayé ce petit code dans une macro sur excel (2003):


Code :
MsgBox Excel.Application.ActivePrinter
Excel.Application.ActivePrinter = "twistDSc435 on Ne03:"
MsgBox Excel.Application.ActivePrinterCette petite macro fonctionne bien
dans excel. Je voudrais utiliser ce même code dans access (2003), mais,
j'ai
l'erreur suivante:

Run time error '1004'
Method 'ActivePrinter' of object'_Application'failed à la ligne
Excel.Application.ActivePrinter = "twistDSc435 on Ne03:"

Pouvez-vous m'aider?

Merci

PS la macro suivante fonctionne aussi sous word


Code :
MsgBox Excel.Application.ActivePrinter
ActivePrinter = "twistDSc435 on Ne03:"
MsgBox Word.ActivePrinter



Avatar
obelix1990
Bonjour CErnst,
Il est exact que dans Access il n'y a pas de propriété ActivePrinter, mais
cette propriété existe dans la collection Excel et Word, c'est pourquoi
j'avais utilisé la commande "Excel.Application...". La commande semblait
fonctionner puisqu'elle me renvoyait bien le nom de l'imprimante active.

Pour palier ce problème et changer l'imprimante utilisée à ma guise j'ai
trouvé la solution suivante (qui change l'imprimante par défaut avec la dll
de windows):

' Change l'imprimante par defaut
' ------------------------------------

Shell ("c:windowssystem32rundll32 printui.dll,PrintUIEntry /y /n " +
Chr(34) + NomImprimanteApres + Chr(34))

' Remet l'imprimante par defaut
' -----------------------------------

Shell ("c:windowssystem32rundll32 printui.dll,PrintUIEntry /y /n " +
Chr(34) + NomImprimanteAvant + Chr(34))
Cette solution est fonctionnelle, ne prend qu'une ligne et convient
parfaitement pour mon application.

Merci pour la réponse....


"CErnst" a écrit :

Il n'y a pas de propriété ActivePrinter dans Access
Regardez dans l'aide les propriétés Printer et Printers de l'objet
Application

"obelix1990" a écrit dans le message
de news:
> Bonjour;
>
> J'ai essayé ce petit code dans une macro sur excel (2003):
>
>
> Code :
> MsgBox Excel.Application.ActivePrinter
> Excel.Application.ActivePrinter = "twistDSc435 on Ne03:"
> MsgBox Excel.Application.ActivePrinterCette petite macro fonctionne bien
> dans excel. Je voudrais utiliser ce même code dans access (2003), mais,
> j'ai
> l'erreur suivante:
>
> Run time error '1004'
> Method 'ActivePrinter' of object'_Application'failed à la ligne
> Excel.Application.ActivePrinter = "twistDSc435 on Ne03:"
>
> Pouvez-vous m'aider?
>
> Merci
>
> PS la macro suivante fonctionne aussi sous word
>
>
> Code :
> MsgBox Excel.Application.ActivePrinter
> ActivePrinter = "twistDSc435 on Ne03:"
> MsgBox Word.ActivePrinter
>