titre d'un fichier word

Le
rico34
Bonjour,

Je souhaite récupérer les 2e et 3e caractères des noms de fichiers word d'un
répertoire donné.
C'est pour finir une macro réalisé avec l'aide d'une file précédente "pied
de page"
réalisée le 4 mai 2007.

Merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Anacoluthe
Le #1622675
Bonjour !

'rico34' nous a écrit ...
Je souhaite récupérer les 2e et 3e caractères des noms de fichiers word d'un
répertoire donné.
C'est pour finir une macro réalisé avec l'aide d'une file précédente "pied
de page"


mid("abcdefg.doc",2,2) donne la chaîne "bc"
Reste à savoir ce que vous voulez faire avec ces 2 lettres

Anacoluthe
« La joie est en tout. Il faut savoir l'extraire. »
- CONFUCIUS

rico34
Le #1622672
Merci pour cette réponse rapide.

Un internaute m'a proposé ce bout de code ci-dessous. Je sais comment faire
pour lister les éléments d'un répertoire, mais pas d'un sous-répertoire.

myFile = Dir$(PathToUse & "*.doc")
While myFile <> ""
'Ouvrir document
Set myDoc = Documents.Open(PathToUse & myFile)

'Enregistrer et fermer document
myDoc.Close SaveChanges:=wdSaveChanges

'Prochain fichier dans le dossier
myFile = Dir$()
Wend

End Sub
Anacoluthe
Le #1622667
Bonjour !

'rico34' nous a écrit ...
Merci pour cette réponse rapide.

Un internaute m'a proposé ce bout de code ci-dessous. Je sais comment faire
pour lister les éléments d'un répertoire, mais pas d'un sous-répertoire.

myFile = Dir$(PathToUse & "*.doc")
While myFile <> ""
...
myFile = Dir$()
Wend


La fonction Dir (préférez l'objet FileSearch) possède un 2ème argument
permettant de rechercher des sous-répertoires : il suffit de faire
un nouveau Dir dans chaque sous-répertoire.
Si on veut explorer toute l'arborescence la fonction doit
s'appeler elle-même récursivement...

Anacoluthe
« L'abîme appelle l'abîme. »
- Victor HUGO

Geo
Le #1622661

Si on veut explorer toute l'arborescence la fonction doit
s'appeler elle-même récursivement...


Attention : on peut avoir quelques soucis lorsqu'on emploie Dir
récursivement.

Un ordre Dir réagit en fonction de celui qui a été exécuté précédemment
et non de celui qui a l'air de précéder dans le code.
Ça dépend comment c'est programmé, il faut raisonner sur la succession
chronologique des appels.

Pour les sous-répertoires et la récursivité je conseille plutôt FSO,
voir :
http://www.microsoft.com/france/msdn/scripting/fso.mspx

--
A+

Anacoluthe
Le #1622656
Hello !

'Geo' nous a écrit ...
Attention : on peut avoir quelques soucis lorsqu'on emploie Dir
récursivement.


Oh que oui ! D'une façon générale la récursivité c'est bon pour les profs
de math ou d'informatique théorique mais mieux vaut éviter en pratique
les mises en abîme... ;-)

Pour les sous-répertoires et la récursivité je conseille plutôt FSO, voir :
http://www.microsoft.com/france/msdn/scripting/fso.mspx


Comme je disais dans mon précédent post, pour explorer
les sous-répertoires, je me contente de l'objet FileSearch
très simple à utiliser :

Public Sub Tous_les_docs()
' dresse la liste de tous les documents de c: !!!
With Application.FileSearch
.FileName = "*.doc"
.LookIn = "C:"
.SearchSubFolders = True ' <--- sous-répertoires !
.Execute
For i = 1 To .FoundFiles.Count
ActiveDocument.Content.InsertAfter vbCr & _
.FoundFiles(i)
Next i
End With
End Sub


Anacoluthe
« L'abîme appelle l'abîme. »
- Victor HUGO

Publicité
Poster une réponse
Anonyme