Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

nom de fichier issu d'une cellule

M

michel

Guest
Bonjour à tous,

Après des recherches (peut-être mal faites) je n'ai pas trouver la solution.

Voici mon problème

J'ai une feuille modèle que je complète puis que j'enregistre en PDF par une imprimante virtuelle avec un bouton et du code VBA.
Comment faire pour que dans l'emplacement du nom du fichier apparaisse la valeur d'une cellule (M11) qui est en fait le nom du fichier que je suis obligé de retapejusqu'à présent. Etant quelque peu fainéant j'aimerai que ce nom issu de cette cellule appraisse à l'ouverture de la boite de dialogue.
Quel bout de code rajouter pour obtenir cela ?

Merci pour votre aide

Michel
 
E

Eric C

Guest
Bonsoir le forum
Bonsoir Michel

Je n'ai pas testé mais essayes ce code. En fait à la fermeture de ton fichier, il prend la valeur de ta cell M11 pour l'affecter comme nom de fichier.
Le chemin est bien sur à adapter.

Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.SaveAs "C:\mes documents\" & Sheets("feuil1").Range("m11").Value & ".Pdf"
End Sub

Bon fin de ouikand à toutes & à tous.
@ ++ Eric C
 
@

@+Thierry

Guest
Bonsoir Eric, Michel, le Forum

Euh oui et non Eric, "SaveAs" va sérieusement pas aimer l'extension ".PDF" (lol)

Pour une solution simple avec un "SendKey' voici un extrait de code pour Acrobat 5.0 s'appuyant sur le PDF Writer :

Const ThePath As String = "I:\MC_PROD\Bank\Transac\" '(exemple à adapter of course)
Dim TheFile As String

TheFile = Sheets("TheFeuille").Range("M11").Value & ".Pdf"

Application.SendKeys Keys:=ThePath & TheFile + "~"
Sheets("Transaction").PrintOut ActivePrinter:="Acrobat PDFWriter on LPT1:"

Mais attention, il n'y a plus de PDF Writer sous Acrobat 6.0

Bon Courage
@+Thierry
 
E

Eric C

Guest
Re bonsoir le forum
Re bonsoir Michel, bonsoir Thierry

Content de te lire depuis tout ce temps. Comme tu le constates, y n'ai pas changé, toujours à bidouiller ...lol....
Merci de ton intervention pour l'autre post . Apparemment, je ne dois pas posséder MSOWC.dll
Bonne fin de ouikand à toutes & à tous
@ ++ Eric C
 
M

michel

Guest
Bonjour le forum,

Merci thierry et Eric pour votre réponse.

J'ai essayé la version de thierry ce qui donne comme code ceci au total :
Private Sub Save_Click()
Const ThePath As String = "C:\\S Michel\Bureau\Kali"
Dim TheFile As String
TheFile = Sheets("BILAN").Range("Fichier").Value & ".Pdf"
Application.SendKeys Keys:=ThePath & TheFile + "~"
Application.ActivePrinter = "eDocPrinter PDF Pro sur LPT1:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
"eDocPrinter PDF Pro sur LPT1:", Collate:=True
End Sub
"C:\\S Michel\Bureau\Kali" est le chemin d'accés au fichier dans lequel je veux enregistrer

Bilan, le nom de la feuille, Fichier le nom de la cellule, Kali est le dossier de destination

Cela marche presque, hormis le fait que le nom du fichier devient :

kali et les données de la celulle "fichier ( ex : kali durand 69)

Que modifier pour retirer en fait "kali"

Merci pour la réponse
Et bravo pour vos compétences
Michel
 
M

michel

Guest
Bonjour le forum,

Toutes mes excuses pour le message précédent, j'ai trouvé l'erreur de ma part, j'avais oublie le "\".

Comme quoi, on ne verifie pas toujours assez.

Avec toutes mes excuses pour le dérangement

Merci encore

Michel
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…