Macro Excel: renommage de fichiers
printfx000
-
lermite222 Messages postés 9042 Statut Contributeur -
lermite222 Messages postés 9042 Statut Contributeur -
Salut,
Dans mon espace de travail, j'ai des documents avec des pièces jointes qui leur sont attachés, le tout étant bien sûr répertorié dans une base access.
Les documents ainsi que les pièces jointes peuvent être de type .pdf, .doc, ou .zip.
Les pièces jointes ne sont pas forcément en 'similitude' avec le document auquel il est rattaché, que ce soit au niveau du nom ou du format.
(Ex: le Document Banane.pdf peut avoir comme pièce jointe Stylo.doc).
je souhaiterais faire la chose suivante avec une macro excel: renommer toutes les pièces jointes selon le nom des documents auquels elles sont rattachées en conservant leurs formats initiales (=pas en leur donnant le format du document).
(Ex: Renommer "Stylo.doc" en "Banane - Attachment.doc"
ET PAS en "Banane - Attachment.PDF" )
Comment faire ?
Merci de vos réponses.
Dans mon espace de travail, j'ai des documents avec des pièces jointes qui leur sont attachés, le tout étant bien sûr répertorié dans une base access.
Les documents ainsi que les pièces jointes peuvent être de type .pdf, .doc, ou .zip.
Les pièces jointes ne sont pas forcément en 'similitude' avec le document auquel il est rattaché, que ce soit au niveau du nom ou du format.
(Ex: le Document Banane.pdf peut avoir comme pièce jointe Stylo.doc).
je souhaiterais faire la chose suivante avec une macro excel: renommer toutes les pièces jointes selon le nom des documents auquels elles sont rattachées en conservant leurs formats initiales (=pas en leur donnant le format du document).
(Ex: Renommer "Stylo.doc" en "Banane - Attachment.doc"
ET PAS en "Banane - Attachment.PDF" )
Comment faire ?
Merci de vos réponses.
A voir également:
- Macro Excel: renommage de fichiers
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Si ou excel - Guide
- Déplacer colonne excel - Guide
2 réponses
Bonjour,
Déjà, il te faut une macro pour parcourir un dossier :
Voici une base à adapter à tes besoins :
Ensuite il te faudra batir le nom du fichier [ varFichier ] avec les valeurs
que tu souhaites.
Si tu as de la difficulté, ya ka demander :-)
Cdt
Lupin
Déjà, il te faut une macro pour parcourir un dossier :
Voici une base à adapter à tes besoins :
Sub ChercheFichier()
Const cteRepertoire = "C:\Documents Local\"
Const cteDestination = "C:\Documents Local\Tempo\"
Const cteTexte = "xls"
Dim varFichier As Variant
varFichier = Dir(cteRepertoire, vbDirectory) ' Extrait la première entrée.
Do While varFichier <> "" ' Commence la boucle.
' Ignore le dossier courant et le dossier
' contenant le dossier courant.
If ((varFichier <> ".") And (varFichier <> "..")) Then
' Utilise une comparaison au niveau du bit pour
' vérifier que varFichier est un dossier.
If ((GetAttr(cteRepertoire & varFichier) And vbDirectory) = vbDirectory) Then
'MsgBox "Dossier : " & varFichier ' Affiche l'entrée si dossier.
DoEvents
Else
MsgBox "Fichier : " & varFichier ' Affiche l'entrée si fichier.
If (InStr(1, varFichier, cteTexte, vbTextCompare) > 0) Then
FileCopy cteRepertoire & varFichier, cteDestination & varFichier
Kill cteRepertoire & varFichier
End If
End If
End If
varFichier = Dir ' Extrait l'entrée suivante.
Loop
End Sub
'
Ensuite il te faudra batir le nom du fichier [ varFichier ] avec les valeurs
que tu souhaites.
Si tu as de la difficulté, ya ka demander :-)
Cdt
Lupin
Bonjour,
Ta question est pas clair du tout...
Tu ne peu pas changer l'extention du fichier, sinon ça marchera plus, mais pour changer le nom...
Si tu connaît le nom du fichier la fonction est ...
Pas oublier de préciser le chemin dans les deux cas.
Si tu veux en faire une copie dans un autre répertoire...
A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Ta question est pas clair du tout...
Tu ne peu pas changer l'extention du fichier, sinon ça marchera plus, mais pour changer le nom...
Si tu connaît le nom du fichier la fonction est ...
Name "Stylo.doc" As "banane.doc"
Pas oublier de préciser le chemin dans les deux cas.
name "C:\Test1\Stylo.doc" as "C:Test\Banane.doc"
Si tu veux en faire une copie dans un autre répertoire...
name "C:\Test1\Stylo.doc" as "C:\TestBis\Banane.doc"
A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.