Nom du fichier d'impression en vba excel

Résolu/Fermé
Nospam54 Messages postés 152 Date d'inscription jeudi 16 avril 2009 Statut Membre Dernière intervention 15 novembre 2017 - 18 déc. 2015 à 15:05
Nospam54 Messages postés 152 Date d'inscription jeudi 16 avril 2009 Statut Membre Dernière intervention 15 novembre 2017 - 8 janv. 2016 à 11:24
Bonjour,

Je souhaite que l'impression de mon fichier Excel soit effectuée sous le format ".prn" de façon à le stocker pour une impression ultérieure.
J'ai donc créé le code ci-dessous :

Sub Impr_Chq()
'
Dim Dest As String
'
With Sheets("Fond_Lettre_Chq")
Dest = Application.Proper(Range("Chq_Nom"))
'
Application.ActivePrinter = "HP LaserJet Professional P1606dn sur Ne04:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
"HP LaserJet Professional P1606dn sur Ne04:", PrintToFile:=True, Collate:=True
Application.ActivePrinter = "Canon iR5055/5065 sur Ne06:"
End With
End Sub


Le souci est que, arrivé à la boite de dialogue qui permet d'insérer le nom du fichier (ici dans la variable "Dest"), je ne trouve pas le code nécessaire... Ce qui m'oblige à le rentrer manuellement. Pas cool...

Quelqu'un/une aurait un conseil à me fournir ?

Merci d'avance !



A voir également:

1 réponse

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
8 janv. 2016 à 07:20
Bonjour,

si
PrintToFile:=True
, pour definir par programme le nom du fichier prn:
PrToFileName:= "chemin et nom de fichier"

Sub Impr_Chq()
'
Dim Dest As String
'
    With Sheets("Fond_Lettre_Chq")
        Dest = Application.Proper(Range("Chq_Nom"))
'
        Application.ActivePrinter = "HP LaserJet Professional P1606dn sur Ne04:"
        ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
            "HP LaserJet Professional P1606dn sur Ne04:", PrintToFile:=True, Collate:=True _
            , PrToFileName:=Dest
        Application.ActivePrinter = "Canon iR5055/5065 sur Ne06:"
    End With

End Sub
0
Nospam54 Messages postés 152 Date d'inscription jeudi 16 avril 2009 Statut Membre Dernière intervention 15 novembre 2017 13
8 janv. 2016 à 11:24
Bonjour,

Bon... simple, quoi ! Fallait juste le savoir. ;)

Ce qui est assez amusant, c'est que j'ai parcouru pas mal de forums sur cette question précise. Aucun ne fournissait ne serait-ce qu'une approche de solution. Voire certains indiquant que cela n'est pas possible...

Merci beaucoup !

Le but étant de gérer l'émission de chèques automatiques, cela me permet d'optimiser cette tâche de façon vraiment significative.

Mon problème était d'imprimer ceux-ci sur un périphérique réseau partagé, sur des chèques pré-imprimés.

Pour ne pas se retrouver avec des impressions tierces qui se glisseraient dans celles des chèques (ceci étant arrivé plusieurs fois !), l'idée était de générer et de stocker un fichier d'impression par chèque émis, puis de lancer le job à un moment choisi, entre midi et deux par exemple, quand les collaborateurs sont partis déjeuner.

Pour parfaire mon appli, je vais maintenant essayer de coder ce qu'il faut pour gérer l'application que j'utilise pour lancer ces fichiers de façon automatique...

Peut-être à une prochaine question ? Qui sait... En tout cas vous m'avez sacrément bien aidé !
Et sans doute que cela pourra aider d'autres personnes qui cherchent, ou cherchaient, à résoudre cette question.
0