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

Encore un truc bizarre

6 réponses
Avatar
Gadget
Salut.
J'ai nommé dans une feuille Excel une cellule ImpWord, et j'y ai mis le nom
complet de l'imprimante que je dois utiliser pour imprimer un document word.
Sous VBA, dans la procédure d'un bouton de commande, j'ai mis, après avoir
créé une instante de Word sous l'objet WApp, linstruction suivante ;
WApp.ActivePrinter = [ImpWord]
Il me répond qu'il y a incompatibilité de type. La portée des plages nommées
ne va pas jusqu'au code des Userfoorms ?
Quand le code est interrompu là par l'erreur, un 'Print [ImpWord]' me donne
bien le nom de l'imprimante.

Encore plus bizarre, si je remplace [ImpWord] par la référence directe à la
celleule, Worksheets("MAfeuille").range("C6").Value, celà génère une autre
erreur : '5216 : Erreur d'imprimante' ; que je ne conaissait pas.

Quelqun peut-il m'expliquer ?
Merci.



--
Visitez notre site !
>>> www.tohubohu.fr <<<

6 réponses

Avatar
MichDenis
Dans ta plage nommée, as-tu la bonne référence à l'imprimante
avec la bonne syntaxe ?

Comme ceci :

Contenu de la cellule : "HP LaserJet 4 local on LPT1:"
Dans ton application :
WApp.ActivePrinter = Worksheets("MAfeuille").range("ImpWord")

Ou réseau
Contenu de la cellule : "HP LaserJet IIISi on printerslaser"
Dans ton application :
WApp.ActivePrinter = Worksheets("MAfeuille").range("ImpWord")



"Gadget" a écrit dans le message de news: 4640f084$0$25927$
Salut.
J'ai nommé dans une feuille Excel une cellule ImpWord, et j'y ai mis le nom
complet de l'imprimante que je dois utiliser pour imprimer un document word.
Sous VBA, dans la procédure d'un bouton de commande, j'ai mis, après avoir
créé une instante de Word sous l'objet WApp, linstruction suivante ;
WApp.ActivePrinter = [ImpWord]
Il me répond qu'il y a incompatibilité de type. La portée des plages nommées
ne va pas jusqu'au code des Userfoorms ?
Quand le code est interrompu là par l'erreur, un 'Print [ImpWord]' me donne
bien le nom de l'imprimante.

Encore plus bizarre, si je remplace [ImpWord] par la référence directe à la
celleule, Worksheets("MAfeuille").range("C6").Value, celà génère une autre
erreur : '5216 : Erreur d'imprimante' ; que je ne conaissait pas.

Quelqun peut-il m'expliquer ?
Merci.



--
Visitez notre site !
www.tohubohu.fr <<<






Avatar
Gérald ROUSSEL
Bonsoir Gadget,
Comme l'indique la page http://support.microsoft.com/kb/177275/fr, la
deuxième erreur indique que l'imprimante n'est pas installée...
Evidemment, elle l'est (enfin, je l'espère...) mais c'est la résolution de
son nom qui ne lui plait pas à mon avis.
Voilà, c'était mon grain de sable à l'édifice ;-)
Bonne soirée.

Courage et persévérence...
Gérald ROUSSEL.

"Gadget" a écrit dans le message de news:
4640f084$0$25927$
Salut.
J'ai nommé dans une feuille Excel une cellule ImpWord, et j'y ai mis le
nom complet de l'imprimante que je dois utiliser pour imprimer un document
word.
Sous VBA, dans la procédure d'un bouton de commande, j'ai mis, après avoir
créé une instante de Word sous l'objet WApp, linstruction suivante ;
WApp.ActivePrinter = [ImpWord]
Il me répond qu'il y a incompatibilité de type. La portée des plages
nommées ne va pas jusqu'au code des Userfoorms ?
Quand le code est interrompu là par l'erreur, un 'Print [ImpWord]' me
donne bien le nom de l'imprimante.

Encore plus bizarre, si je remplace [ImpWord] par la référence directe à
la celleule, Worksheets("MAfeuille").range("C6").Value, celà génère une
autre erreur : '5216 : Erreur d'imprimante' ; que je ne conaissait pas.

Quelqun peut-il m'expliquer ?
Merci.



--
Visitez notre site !
www.tohubohu.fr <<<










Avatar
Gérald ROUSSEL
Effectivement Denis "sauf que" dans le cas de l'imprimante réseau, la
syntaxe est :
"ServeurImpressionNomImprimante sur NE08:" sans oublier les ":"

Pour le vérifier, il suffit d'utiliser MsgBox Application.ActivePrinter

Courage et persévérence...
Gérald ROUSSEL.

"MichDenis" a écrit dans le message de news:

Dans ta plage nommée, as-tu la bonne référence à l'imprimante
avec la bonne syntaxe ?

Comme ceci :

Contenu de la cellule : "HP LaserJet 4 local on LPT1:"
Dans ton application :
WApp.ActivePrinter = Worksheets("MAfeuille").range("ImpWord")

Ou réseau
Contenu de la cellule : "HP LaserJet IIISi on printerslaser"
Dans ton application :
WApp.ActivePrinter = Worksheets("MAfeuille").range("ImpWord")



"Gadget" a écrit dans le message de news:
4640f084$0$25927$
Salut.
J'ai nommé dans une feuille Excel une cellule ImpWord, et j'y ai mis le
nom
complet de l'imprimante que je dois utiliser pour imprimer un document
word.
Sous VBA, dans la procédure d'un bouton de commande, j'ai mis, après avoir
créé une instante de Word sous l'objet WApp, linstruction suivante ;
WApp.ActivePrinter = [ImpWord]
Il me répond qu'il y a incompatibilité de type. La portée des plages
nommées
ne va pas jusqu'au code des Userfoorms ?
Quand le code est interrompu là par l'erreur, un 'Print [ImpWord]' me
donne
bien le nom de l'imprimante.

Encore plus bizarre, si je remplace [ImpWord] par la référence directe à
la
celleule, Worksheets("MAfeuille").range("C6").Value, celà génère une autre
erreur : '5216 : Erreur d'imprimante' ; que je ne conaissait pas.

Quelqun peut-il m'expliquer ?
Merci.



--
Visitez notre site !
www.tohubohu.fr <<<











Avatar
MichDenis
Les 2 exemples proviennent directement de l'aide de Word...



"Gérald ROUSSEL" a écrit dans le message de news:
4640f84e$0$3459$
Effectivement Denis "sauf que" dans le cas de l'imprimante réseau, la
syntaxe est :
"ServeurImpressionNomImprimante sur NE08:" sans oublier les ":"

Pour le vérifier, il suffit d'utiliser MsgBox Application.ActivePrinter

Courage et persévérence...
Gérald ROUSSEL.

"MichDenis" a écrit dans le message de news:

Dans ta plage nommée, as-tu la bonne référence à l'imprimante
avec la bonne syntaxe ?

Comme ceci :

Contenu de la cellule : "HP LaserJet 4 local on LPT1:"
Dans ton application :
WApp.ActivePrinter = Worksheets("MAfeuille").range("ImpWord")

Ou réseau
Contenu de la cellule : "HP LaserJet IIISi on printerslaser"
Dans ton application :
WApp.ActivePrinter = Worksheets("MAfeuille").range("ImpWord")



"Gadget" a écrit dans le message de news:
4640f084$0$25927$
Salut.
J'ai nommé dans une feuille Excel une cellule ImpWord, et j'y ai mis le
nom
complet de l'imprimante que je dois utiliser pour imprimer un document
word.
Sous VBA, dans la procédure d'un bouton de commande, j'ai mis, après avoir
créé une instante de Word sous l'objet WApp, linstruction suivante ;
WApp.ActivePrinter = [ImpWord]
Il me répond qu'il y a incompatibilité de type. La portée des plages
nommées
ne va pas jusqu'au code des Userfoorms ?
Quand le code est interrompu là par l'erreur, un 'Print [ImpWord]' me
donne
bien le nom de l'imprimante.

Encore plus bizarre, si je remplace [ImpWord] par la référence directe à
la
celleule, Worksheets("MAfeuille").range("C6").Value, celà génère une autre
erreur : '5216 : Erreur d'imprimante' ; que je ne conaissait pas.

Quelqun peut-il m'expliquer ?
Merci.



--
Visitez notre site !
www.tohubohu.fr <<<











Avatar
jps
gérald, persévérAnce, steplé...
jps (un brin irrévérencieux)

"Gérald ROUSSEL" a écrit dans le message de news:
4640f84e$0$3459$
Effectivement Denis "sauf que" dans le cas de l'imprimante réseau, la
syntaxe est :
"ServeurImpressionNomImprimante sur NE08:" sans oublier les ":"

Pour le vérifier, il suffit d'utiliser MsgBox Application.ActivePrinter

Courage et persévérence...
Gérald ROUSSEL.

"MichDenis" a écrit dans le message de news:

Dans ta plage nommée, as-tu la bonne référence à l'imprimante
avec la bonne syntaxe ?

Comme ceci :

Contenu de la cellule : "HP LaserJet 4 local on LPT1:"
Dans ton application :
WApp.ActivePrinter = Worksheets("MAfeuille").range("ImpWord")

Ou réseau
Contenu de la cellule : "HP LaserJet IIISi on printerslaser"
Dans ton application :
WApp.ActivePrinter = Worksheets("MAfeuille").range("ImpWord")



"Gadget" a écrit dans le message de news:
4640f084$0$25927$
Salut.
J'ai nommé dans une feuille Excel une cellule ImpWord, et j'y ai mis le
nom
complet de l'imprimante que je dois utiliser pour imprimer un document
word.
Sous VBA, dans la procédure d'un bouton de commande, j'ai mis, après
avoir
créé une instante de Word sous l'objet WApp, linstruction suivante ;
WApp.ActivePrinter = [ImpWord]
Il me répond qu'il y a incompatibilité de type. La portée des plages
nommées
ne va pas jusqu'au code des Userfoorms ?
Quand le code est interrompu là par l'erreur, un 'Print [ImpWord]' me
donne
bien le nom de l'imprimante.

Encore plus bizarre, si je remplace [ImpWord] par la référence directe à
la
celleule, Worksheets("MAfeuille").range("C6").Value, celà génère une
autre
erreur : '5216 : Erreur d'imprimante' ; que je ne conaissait pas.

Quelqun peut-il m'expliquer ?
Merci.



--
Visitez notre site !
www.tohubohu.fr <<<















Avatar
Gérald ROUSSEL
Oups, désolé, j'avais trop abusé du "jaja" hier... (tu connais le pb ;-))
Merci pour ta remarcation pas du tout vécsante ;-)
cou-rage...
--
Gérald ROUSSEL.

"jps" a écrit dans le message de news:

gérald, persévérAnce, steplé...
jps (un brin irrévérencieux)

"Gérald ROUSSEL" a écrit dans le message de news:
4640f84e$0$3459$
Effectivement Denis "sauf que" dans le cas de l'imprimante réseau, la
syntaxe est :
"ServeurImpressionNomImprimante sur NE08:" sans oublier les ":"

Pour le vérifier, il suffit d'utiliser MsgBox Application.ActivePrinter

Courage et persévérence...
Gérald ROUSSEL.

"MichDenis" a écrit dans le message de news:

Dans ta plage nommée, as-tu la bonne référence à l'imprimante
avec la bonne syntaxe ?

Comme ceci :

Contenu de la cellule : "HP LaserJet 4 local on LPT1:"
Dans ton application :
WApp.ActivePrinter = Worksheets("MAfeuille").range("ImpWord")

Ou réseau
Contenu de la cellule : "HP LaserJet IIISi on printerslaser"
Dans ton application :
WApp.ActivePrinter = Worksheets("MAfeuille").range("ImpWord")



"Gadget" a écrit dans le message de news:
4640f084$0$25927$
Salut.
J'ai nommé dans une feuille Excel une cellule ImpWord, et j'y ai mis le
nom
complet de l'imprimante que je dois utiliser pour imprimer un document
word.
Sous VBA, dans la procédure d'un bouton de commande, j'ai mis, après
avoir
créé une instante de Word sous l'objet WApp, linstruction suivante ;
WApp.ActivePrinter = [ImpWord]
Il me répond qu'il y a incompatibilité de type. La portée des plages
nommées
ne va pas jusqu'au code des Userfoorms ?
Quand le code est interrompu là par l'erreur, un 'Print [ImpWord]' me
donne
bien le nom de l'imprimante.

Encore plus bizarre, si je remplace [ImpWord] par la référence directe à
la
celleule, Worksheets("MAfeuille").range("C6").Value, celà génère une
autre
erreur : '5216 : Erreur d'imprimante' ; que je ne conaissait pas.

Quelqun peut-il m'expliquer ?
Merci.



--
Visitez notre site !
www.tohubohu.fr <<<