Avec une macro, comment rediriger un chemin
Résolu/Fermé
robbybasch
Messages postés
100
Date d'inscription
lundi 14 juillet 2014
Statut
Membre
Dernière intervention
19 août 2022
-
26 mars 2016 à 07:42
robbybasch Messages postés 100 Date d'inscription lundi 14 juillet 2014 Statut Membre Dernière intervention 19 août 2022 - 28 mars 2016 à 11:47
robbybasch Messages postés 100 Date d'inscription lundi 14 juillet 2014 Statut Membre Dernière intervention 19 août 2022 - 28 mars 2016 à 11:47
A voir également:
- Avec une macro, comment rediriger un chemin
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Macro word - Guide
- Comment rediriger une adresse mail - Guide
- Jitbit macro recorder - Télécharger - Confidentialité
- Macro logiciel - Télécharger - Organisation
6 réponses
tyranausor
Messages postés
3545
Date d'inscription
jeudi 6 août 2009
Statut
Membre
Dernière intervention
1 avril 2022
2 033
26 mars 2016 à 12:29
26 mars 2016 à 12:29
Bonjour, si tu lis l'aide de ExportasfixedFormat tu aurais vu qu'il faut spécifier un répertoire, et chose que tu as faite. Mais en mettant
Bref, avec
ActiveDocument.Pathsachant qu'avant tu as enregistré ton document dans un dossier spécifique (Devis Word), le chemin du document actif reste celui que tu as donné même si tu indiques un nouveau chemin, il ne sera pas pris en compte! Un ordi c'est bête, il ne faut pas l'oublier, si tu lui d'aller à droite, il tourne à droite même s'il y a un mur!
Bref, avec
chemin = "E:\_Mes Données\Valentin\Documents administratifs\Devis_Pdf"ça devrait aller mieux
ActiveDocument.ExportAsFixedFormat outputFileName:=chemin & "/" & nfichier2, _
exportFormat:=wdExportFormatPDF
robbybasch
Messages postés
100
Date d'inscription
lundi 14 juillet 2014
Statut
Membre
Dernière intervention
19 août 2022
26 mars 2016 à 17:16
26 mars 2016 à 17:16
Bonjour Tyranausor
Je viens d'essayer et cela m'enregistre toujours dans devis_word. Qu'ai fait qu'il ne faut pas faire ??? je te remets ce que j'ai noté :
Private Sub CommandButton1_Click()
'macro écrite par m@rina
Dim nom As String, nom2 As String, nombre
ChangeFileOpenDirectory "E:\_Mes Données\Valentin\Documents Administratifs\Devis_Word"
nom = ActiveDocument.Paragraphs(1).Range
nombre = ActiveDocument.Paragraphs(1).Range.Characters.Count
nom2 = (Left(nom, nombre - 1))
ActiveDocument.SaveAs FileName:=nom2 & ".docx"
Dim nfichier As String, nfichier2 As String, intpos As Byte
nfichier = ActiveDocument.Name
'trouve la position de l'extension
intpos = InStrRev(nfichier, ".")
'remplace l'extension doc par pdf
nfichier = Left(nfichier, intpos - 1)
nfichier2 = nfichier & ".pdf"
'enregistre dans le dossier en cours
chemin_pdf = "E:\_Mes Données\Valentin\Documents administratifs\Devis_Pdf"
ActiveDocument.ExportAsFixedFormat outputFileName:=chemin_pdf & "/" & nfichier2, _
exportFormat:=wdExportFormatPDF
End Sub
faut-il définir la variable chemin_pdf afin qu'elle soit prise en compte ?
CDL
Robby
Je viens d'essayer et cela m'enregistre toujours dans devis_word. Qu'ai fait qu'il ne faut pas faire ??? je te remets ce que j'ai noté :
Private Sub CommandButton1_Click()
'macro écrite par m@rina
Dim nom As String, nom2 As String, nombre
ChangeFileOpenDirectory "E:\_Mes Données\Valentin\Documents Administratifs\Devis_Word"
nom = ActiveDocument.Paragraphs(1).Range
nombre = ActiveDocument.Paragraphs(1).Range.Characters.Count
nom2 = (Left(nom, nombre - 1))
ActiveDocument.SaveAs FileName:=nom2 & ".docx"
Dim nfichier As String, nfichier2 As String, intpos As Byte
nfichier = ActiveDocument.Name
'trouve la position de l'extension
intpos = InStrRev(nfichier, ".")
'remplace l'extension doc par pdf
nfichier = Left(nfichier, intpos - 1)
nfichier2 = nfichier & ".pdf"
'enregistre dans le dossier en cours
chemin_pdf = "E:\_Mes Données\Valentin\Documents administratifs\Devis_Pdf"
ActiveDocument.ExportAsFixedFormat outputFileName:=chemin_pdf & "/" & nfichier2, _
exportFormat:=wdExportFormatPDF
End Sub
faut-il définir la variable chemin_pdf afin qu'elle soit prise en compte ?
CDL
Robby
tyranausor
Messages postés
3545
Date d'inscription
jeudi 6 août 2009
Statut
Membre
Dernière intervention
1 avril 2022
2 033
26 mars 2016 à 22:30
26 mars 2016 à 22:30
Ne serait-il pas plus simple de stocker le nom dans une variable? Et si tu peux joindre ton fichier (sans données perso), ça serait pas plus mal pour voir ce qui va pas.
robbybasch
Messages postés
100
Date d'inscription
lundi 14 juillet 2014
Statut
Membre
Dernière intervention
19 août 2022
27 mars 2016 à 12:28
27 mars 2016 à 12:28
Bonjour Tyranausor
Eh ben c'est bien a ce que je pense mais je ne sais pas faire. Si tu peux me dépanner. En faite la variable ou se trouve le nom de fichier pdf est nfichier2 et la variable du chemin est cheminpdf (ce que tu m'as indiqué). Ce que je ne sais pas faire c'est à partir de l'appel d'un programme (acrobat en l'occurence) concatener le tout "logiciel chemin et variable nom de fichier" en vba.
Pour ouvrir acrobat j'ai trouvé ceci :
Shell "cmd /c start acrord32.exe ce qui fonctionne parfaitement, après l'enregistrement du doc word et pdf, acrobat s'ouvre mais ne trouve pas le nom de fichier. Je pense que c'est ma commande qui n'est pas bonne.
La ou cela ne va pas c'est la ligne c'est ou j'ai rajouté le texte en gras
Shell "cmd /c start acrord32.exe outputFilename:=cheminpdf & nfichier2"
Eh ben c'est bien a ce que je pense mais je ne sais pas faire. Si tu peux me dépanner. En faite la variable ou se trouve le nom de fichier pdf est nfichier2 et la variable du chemin est cheminpdf (ce que tu m'as indiqué). Ce que je ne sais pas faire c'est à partir de l'appel d'un programme (acrobat en l'occurence) concatener le tout "logiciel chemin et variable nom de fichier" en vba.
Pour ouvrir acrobat j'ai trouvé ceci :
Shell "cmd /c start acrord32.exe ce qui fonctionne parfaitement, après l'enregistrement du doc word et pdf, acrobat s'ouvre mais ne trouve pas le nom de fichier. Je pense que c'est ma commande qui n'est pas bonne.
La ou cela ne va pas c'est la ligne c'est ou j'ai rajouté le texte en gras
Shell "cmd /c start acrord32.exe outputFilename:=cheminpdf & nfichier2"
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
tyranausor
Messages postés
3545
Date d'inscription
jeudi 6 août 2009
Statut
Membre
Dernière intervention
1 avril 2022
2 033
27 mars 2016 à 22:23
27 mars 2016 à 22:23
Bonjour, c’est expliqué ici comment joindre un fichier. Concernant l'ouverture du fichier après export, je suppose, ce sera
Je te repréciserais cela directement dans ton document
activedocument.ExportAsFixedFormat OutputFileName :=cheminpdf & nfichier2" , ExportFormat:=wdExportFormatPDF, OpenAfterExport:=true
Je te repréciserais cela directement dans ton document
robbybasch
Messages postés
100
Date d'inscription
lundi 14 juillet 2014
Statut
Membre
Dernière intervention
19 août 2022
28 mars 2016 à 11:47
28 mars 2016 à 11:47
Bonjour tyranausor
ne cherche plus.. j'ai trouvé ( il suffisait d'ajouter un +).... en fouillant sur le net. (j'avais un peu de temps). Donc si cela intéresse des personnes je mets le code qui sert à :
Pour les nuls en word et pour ceux qui ont du mal avec les chemins, cette macro permet de noter le nom du fichier dans le document word (qui est masqué pour l'impression) et en cliquant sur un bouton (masqué également) à coté, il permet d'enregistrer en word et en pdf et ouvre à la fin le pdf, ce qui permet une vérification. le doc word est dans un dossier word et le doc pdf est dans un dossier pdf.
macro :
Merci à tyranausor pour sa contribution. Si le fichier interesse des personnes, pas de problème pour l'envoyer.
CDL
Robby
ne cherche plus.. j'ai trouvé ( il suffisait d'ajouter un +).... en fouillant sur le net. (j'avais un peu de temps). Donc si cela intéresse des personnes je mets le code qui sert à :
Pour les nuls en word et pour ceux qui ont du mal avec les chemins, cette macro permet de noter le nom du fichier dans le document word (qui est masqué pour l'impression) et en cliquant sur un bouton (masqué également) à coté, il permet d'enregistrer en word et en pdf et ouvre à la fin le pdf, ce qui permet une vérification. le doc word est dans un dossier word et le doc pdf est dans un dossier pdf.
macro :
Private Sub CommandButton1_Click()
'macro écrite par m@rina
chemindocx = "E:\_Mes Données\Valentin\Documents Administratifs\Devis_Word\"
cheminpdf = "E:\_Mes Données\Valentin\Documents administratifs\Devis_Pdf\"
Dim nom As String, nom2 As String, nombre
nom = ActiveDocument.Paragraphs(1).Range
nombre = ActiveDocument.Paragraphs(1).Range.Characters.Count
nom2 = (Left(nom, nombre - 1))
ActiveDocument.SaveAs FileName:=chemindocx & nom2 & ".docx"
Dim nfichier As String, nfichier2 As String, intpos As Byte
nfichier = ActiveDocument.Name
'trouve la position de l'extension
intpos = InStrRev(nfichier, ".")
'remplace l'extension doc par pdf
nfichier = Left(nfichier, intpos - 1)
nfichier2 = nfichier & ".pdf"
'enregistre dans le dossier en cours
ActiveDocument.ExportAsFixedFormat OutputFileName:=cheminpdf & nfichier2, _
ExportFormat:=wdExportFormatPDF, OpenAfterExport:=True
Shell "cmd /c start acrord32.exe + cheminpdf & nfichier2"
End Sub
Merci à tyranausor pour sa contribution. Si le fichier interesse des personnes, pas de problème pour l'envoyer.
CDL
Robby