Bonjour,
J'ai un fichier excel ci-joint.
Je suis débutant en VBA.
Ce tableau sert à gérer les repas dans mon centre de soin. Dans "Gestion résident" et "Plateau personnel" nous modifions les données, et en cliquant sur les boutons d'imprimante, cela imprime le document "impression cuisine"
Avant, j'avais utilisé une formule, quand on cliquait sur l'imprimante ça ouvrait la box de selection de l'imprimante, on envoyait la feuille "IMPRESSION CUISINE" sur celle de la cuisine et c'était bon.
Je souhaiterais pouvoir modifié la formule pour que :
- les pages 1 à 5 s'impriment à la cuisine
- Les pages 6 à 9 s'impriment dans mon bureau
- La page 10 s'imprime sur une autre imprimante
J'ai donc mis cette formule sur mon Bouton :
Sub Bouton6_Cliquer()
Application.ActivePrinter = "PR-BC-03 sur Ne00:"
ActiveWorkbook.RefreshAll
Sheets("Impression CUISINE").PrintOut From:=1, To:=5
Application.ActivePrinter = "\\srv-174-etab\PR-174-07 sur Ne09:"
ActiveWorkbook.RefreshAll
Sheets("Impression CUISINE").PrintOut From:=6, To:=9
Application.ActivePrinter = "\\SRV-174-ETAB.ad.groupe.net\PR-174-02 sur Ne10:"
ActiveWorkbook.RefreshAll
Sheets("Impression CUISINE").PrintOut From:=10, To:=10
End Sub
Cette formule marche depuis mon PC, mais ça ne marche pas quand on le fait depuis un autre ordinateur.
Apres avoir fouillé sur internet, j'ai vu que cela venait du fait que les imprimantes sont en réseau et que le Ne0 changeait (de Ne0 à Ne10 ...)
Sur ce forum, PascalXLD proposait cette formule :
For aa = 0 To 9
Nom = 'EPSON Stylus C82 Series sur Ne0' & aa & ':'
On Error Resume Next
Application.ActivePrinter = Nom
If ActivePrinter = Nom Then Exit For
Next
Mais ça ne marche pas pour moi (je pense parce que le Ne va jusqu'à 10...
Et je ne sais pas l'adapter à mon souhait de l'envoyer sur 3 imprimantes différentes.
Si vous pouviez m'aider !!
Merci mille fois !!!
J'ai un fichier excel ci-joint.
Je suis débutant en VBA.
Ce tableau sert à gérer les repas dans mon centre de soin. Dans "Gestion résident" et "Plateau personnel" nous modifions les données, et en cliquant sur les boutons d'imprimante, cela imprime le document "impression cuisine"
Avant, j'avais utilisé une formule, quand on cliquait sur l'imprimante ça ouvrait la box de selection de l'imprimante, on envoyait la feuille "IMPRESSION CUISINE" sur celle de la cuisine et c'était bon.
Je souhaiterais pouvoir modifié la formule pour que :
- les pages 1 à 5 s'impriment à la cuisine
- Les pages 6 à 9 s'impriment dans mon bureau
- La page 10 s'imprime sur une autre imprimante
J'ai donc mis cette formule sur mon Bouton :
Sub Bouton6_Cliquer()
Application.ActivePrinter = "PR-BC-03 sur Ne00:"
ActiveWorkbook.RefreshAll
Sheets("Impression CUISINE").PrintOut From:=1, To:=5
Application.ActivePrinter = "\\srv-174-etab\PR-174-07 sur Ne09:"
ActiveWorkbook.RefreshAll
Sheets("Impression CUISINE").PrintOut From:=6, To:=9
Application.ActivePrinter = "\\SRV-174-ETAB.ad.groupe.net\PR-174-02 sur Ne10:"
ActiveWorkbook.RefreshAll
Sheets("Impression CUISINE").PrintOut From:=10, To:=10
End Sub
Cette formule marche depuis mon PC, mais ça ne marche pas quand on le fait depuis un autre ordinateur.
Apres avoir fouillé sur internet, j'ai vu que cela venait du fait que les imprimantes sont en réseau et que le Ne0 changeait (de Ne0 à Ne10 ...)
Sur ce forum, PascalXLD proposait cette formule :
For aa = 0 To 9
Nom = 'EPSON Stylus C82 Series sur Ne0' & aa & ':'
On Error Resume Next
Application.ActivePrinter = Nom
If ActivePrinter = Nom Then Exit For
Next
Mais ça ne marche pas pour moi (je pense parce que le Ne va jusqu'à 10...
Et je ne sais pas l'adapter à mon souhait de l'envoyer sur 3 imprimantes différentes.
Si vous pouviez m'aider !!
Merci mille fois !!!