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

changer l'imprimante par défaut

10 réponses
Avatar
Jimmy 974
Bonjour,

Etant débutant en programmation, j'ai une base access avec différents états.
L'impression des états se fait sur l'imprimante par défaut de Windows. Or il
y a deux imprimantes d'installées sur ce poste, et l'imprimante par défaut ne
doit pas être celle pour laquelle a été faite la base (une étiquetteuse). Je
voudrais donc pouvoir diriger l'impression sur l'autre imprimante (qui est
branché en parallèle).
Pourriez vous m'orienter?

Merci d'avance

10 réponses

Avatar
ze Titi
Salut Jimmy !

Je pense que la façon la plus simple est de passer par la librairie
développée par Raymond Seneque qui intervient très régulièrement sur ce
forum:
http://officesystem.access.free.fr/prnprinters.htm

Tout y expliqué, il n'y a plus qu'à appliquer.

En ce jour exceptionnel du mardi 12/06/2007, tu nous as très
généreusement gratifié du message suivant:

Bonjour,

Etant débutant en programmation, j'ai une base access avec différents états.
L'impression des états se fait sur l'imprimante par défaut de Windows. Or il
y a deux imprimantes d'installées sur ce poste, et l'imprimante par défaut ne
doit pas être celle pour laquelle a été faite la base (une étiquetteuse). Je
voudrais donc pouvoir diriger l'impression sur l'autre imprimante (qui est
branché en parallèle).
Pourriez vous m'orienter?

Merci d'avance


--
Cordialement,
Ze Titi

Tout pour réussir avec Access :
http://www.mpfa.info

Avatar
Jimmy 974
Génial.

Merci beaucoup, je vais regarder ça.


Salut Jimmy !

Je pense que la façon la plus simple est de passer par la librairie
développée par Raymond Seneque qui intervient très régulièrement sur ce
forum:
http://officesystem.access.free.fr/prnprinters.htm

Tout y expliqué, il n'y a plus qu'à appliquer.

En ce jour exceptionnel du mardi 12/06/2007, tu nous as très
généreusement gratifié du message suivant:

Bonjour,

Etant débutant en programmation, j'ai une base access avec différents états.
L'impression des états se fait sur l'imprimante par défaut de Windows. Or il
y a deux imprimantes d'installées sur ce poste, et l'imprimante par défaut ne
doit pas être celle pour laquelle a été faite la base (une étiquetteuse). Je
voudrais donc pouvoir diriger l'impression sur l'autre imprimante (qui est
branché en parallèle).
Pourriez vous m'orienter?

Merci d'avance


--
Cordialement,
Ze Titi

Tout pour réussir avec Access :
http://www.mpfa.info






Avatar
Tisane
Bonjour "Jimmy 974",

Etant débutant en programmation, j'ai une base access avec différents
états.
L'impression des états se fait sur l'imprimante par défaut de Windows. Or
il
y a deux imprimantes d'installées sur ce poste, et l'imprimante par défaut
ne
doit pas être celle pour laquelle a été faite la base (une étiquetteuse).
Je
voudrais donc pouvoir diriger l'impression sur l'autre imprimante (qui est
branché en parallèle).


Sans programmer, si tu choisis une imprimante spécifique quand tu crées ton
état, elle est mémorisée avec l'état.
Autrement dit, dans ton état :
- menu Fichier | Mise en page, onglet [Page]
- coche "Utiliser une imprimante spécifique"
- sélectionne l'imprimante que tu veux et enregistre.
Evidemment, à faire sur chaque état, mais c'est fait une fois pour toute.

--
Tisane

Avatar
Jimmy 974
Bonjour,

Merci pour la réponse. J'ai effectivement déjà essayer cette solution sur
quelques états, mais j'en ai vraiment beaucoup des états. Je voulais essayer
de faire ça propre en VBA


Bonjour "Jimmy 974",

Etant débutant en programmation, j'ai une base access avec différents
états.
L'impression des états se fait sur l'imprimante par défaut de Windows. Or
il
y a deux imprimantes d'installées sur ce poste, et l'imprimante par défaut
ne
doit pas être celle pour laquelle a été faite la base (une étiquetteuse).
Je
voudrais donc pouvoir diriger l'impression sur l'autre imprimante (qui est
branché en parallèle).


Sans programmer, si tu choisis une imprimante spécifique quand tu crées ton
état, elle est mémorisée avec l'état.
Autrement dit, dans ton état :
- menu Fichier | Mise en page, onglet [Page]
- coche "Utiliser une imprimante spécifique"
- sélectionne l'imprimante que tu veux et enregistre.
Evidemment, à faire sur chaque état, mais c'est fait une fois pour toute.

--
Tisane





Avatar
Tisane

[...] Je voulais essayer
de faire ça propre en VBA


C'est ça, dis tout de suite que tout ce qui n'est pas VBA, c'est sale !!;-))

--
Tisane (scandalisée...)


Bonjour "Jimmy 974",

Etant débutant en programmation, j'ai une base access avec différents
états.
L'impression des états se fait sur l'imprimante par défaut de Windows.
Or
il
y a deux imprimantes d'installées sur ce poste, et l'imprimante par
défaut
ne
doit pas être celle pour laquelle a été faite la base (une
étiquetteuse).
Je
voudrais donc pouvoir diriger l'impression sur l'autre imprimante (qui
est
branché en parallèle).


Sans programmer, si tu choisis une imprimante spécifique quand tu crées
ton
état, elle est mémorisée avec l'état.
Autrement dit, dans ton état :
- menu Fichier | Mise en page, onglet [Page]
- coche "Utiliser une imprimante spécifique"
- sélectionne l'imprimante que tu veux et enregistre.
Evidemment, à faire sur chaque état, mais c'est fait une fois pour toute.

--
Tisane





Avatar
Jimmy 974
aaahhh cochon, il est sale il fait pas du VBA ;-)
C'est génial ici. Les gens ils répondent aux questions sans casser ceux qui
les posent et en plus ils plaisantent.
J'adhère



[...] Je voulais essayer
de faire ça propre en VBA


C'est ça, dis tout de suite que tout ce qui n'est pas VBA, c'est sale !!;-))

--
Tisane (scandalisée...)


Bonjour "Jimmy 974",

Etant débutant en programmation, j'ai une base access avec différents
états.
L'impression des états se fait sur l'imprimante par défaut de Windows.
Or
il
y a deux imprimantes d'installées sur ce poste, et l'imprimante par
défaut
ne
doit pas être celle pour laquelle a été faite la base (une
étiquetteuse).
Je
voudrais donc pouvoir diriger l'impression sur l'autre imprimante (qui
est
branché en parallèle).


Sans programmer, si tu choisis une imprimante spécifique quand tu crées
ton
état, elle est mémorisée avec l'état.
Autrement dit, dans ton état :
- menu Fichier | Mise en page, onglet [Page]
- coche "Utiliser une imprimante spécifique"
- sélectionne l'imprimante que tu veux et enregistre.
Evidemment, à faire sur chaque état, mais c'est fait une fois pour toute.

--
Tisane









Avatar
Jessie


[...] Je voulais essayer
de faire ça propre en VBA



C'est ça, dis tout de suite que tout ce qui n'est pas VBA, c'est sale
!!;-))

Salut,


tu as d'autres solution comme celle-ci :

Public Function PrnChange() As Boolean
Dim dfltPrinter As String
Dim i As Integer
Dim prtDefault As Printer

dfltPrinter = "Le nom de l'imprimante par défaut"
For i = 0 To Access.Printers.Count - 1
If Access.Application.Printers(i).DeviceName =
"NOM_DE_L'IMPRIMANTE_VOULUE" Then
Set Application.Printer = Application.Printers(i)
End If
Next i
If Application.Printer.DeviceName = "NOM_DE_L'IMPRIMANTE_VOULUE" Then
PrnChange= True
Else
PrnChange= False
End If

Ainsi au sortir de ta fonction, si l'imprimante par voulue est bien
présente sur ta machine, la fonction retourne la valeur true et tu sais
que le changement d'imprimante a été effectué.

Cela n'est qu'un début, mais tu peux déjà t'amuser avec ça !!!
Bonne chance !
JessieM34


Avatar
Jimmy 974
Salut Jessie,

Merci beaucoup, je vais tester ça tout de suite.





[...] Je voulais essayer
de faire ça propre en VBA



C'est ça, dis tout de suite que tout ce qui n'est pas VBA, c'est sale
!!;-))

Salut,


tu as d'autres solution comme celle-ci :

Public Function PrnChange() As Boolean
Dim dfltPrinter As String
Dim i As Integer
Dim prtDefault As Printer

dfltPrinter = "Le nom de l'imprimante par défaut"
For i = 0 To Access.Printers.Count - 1
If Access.Application.Printers(i).DeviceName =
"NOM_DE_L'IMPRIMANTE_VOULUE" Then
Set Application.Printer = Application.Printers(i)
End If
Next i
If Application.Printer.DeviceName = "NOM_DE_L'IMPRIMANTE_VOULUE" Then
PrnChange= True
Else
PrnChange= False
End If

Ainsi au sortir de ta fonction, si l'imprimante par voulue est bien
présente sur ta machine, la fonction retourne la valeur true et tu sais
que le changement d'imprimante a été effectué.

Cela n'est qu'un début, mais tu peux déjà t'amuser avec ça !!!
Bonne chance !
JessieM34





Avatar
Jimmy 974
ça y est
j'ai mis la fonction et elle s'execute avec une macro AutoExec.
Dans mon menu personnalisé, je clique sur imprimer mais ça n'imprime pas sur
la bonne imprimanten alors que j'ai bien mis dans le code l'imprimante que je
voulais.




Salut Jessie,

Merci beaucoup, je vais tester ça tout de suite.





[...] Je voulais essayer
de faire ça propre en VBA



C'est ça, dis tout de suite que tout ce qui n'est pas VBA, c'est sale
!!;-))

Salut,


tu as d'autres solution comme celle-ci :

Public Function PrnChange() As Boolean
Dim dfltPrinter As String
Dim i As Integer
Dim prtDefault As Printer

dfltPrinter = "Le nom de l'imprimante par défaut"
For i = 0 To Access.Printers.Count - 1
If Access.Application.Printers(i).DeviceName =
"NOM_DE_L'IMPRIMANTE_VOULUE" Then
Set Application.Printer = Application.Printers(i)
End If
Next i
If Application.Printer.DeviceName = "NOM_DE_L'IMPRIMANTE_VOULUE" Then
PrnChange= True
Else
PrnChange= False
End If

Ainsi au sortir de ta fonction, si l'imprimante par voulue est bien
présente sur ta machine, la fonction retourne la valeur true et tu sais
que le changement d'imprimante a été effectué.

Cela n'est qu'un début, mais tu peux déjà t'amuser avec ça !!!
Bonne chance !
JessieM34







Avatar
Jimmy 974
Bonjour Jessie,

Je viens te dire que c'est tout bon et je te remercie beaucoup.

@++