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

XL 2013 Relever mots-clés de fichiers Word vers un tableau Excel

nicolo9

XLDnaute Nouveau
Bonjour,

Après plusieurs recherches sur des forums, je n'ai toujours pas trouvé comment récupérer des mots d'un fichier Word (ou même Excel) pour les écrire dans une case bien précise dans Excel.

Je m'explique : Mon but est de répertorier tous les dossiers/fichiers enregistrés dans le réseau informatique de l'usine dans laquelle je travaille.

De ce fait, j'organise une page Excel comme l'image en pièce jointe :

Grâce à ma macro « Exécution », j’arrive à récupérer tous mes fichiers et dossiers dans le tableau de B5:Bfin pour les noms et de C5:Cfin pour les types du fichier. (En A1 j'ai mon dossier parent en path [H:\.......])
VB:
Sub Exécution()
    Dim path As String
    Dim myaddress As String
    Dim myRange As Range
    myaddress = "B4"
    Set myRange = Range(myaddress)
'Initialisation du chemin
     path = Range("A1").Value
    Call Lister_le_contenu(path, myRange)
End Sub

Avec la macro intermédiaire Lister_le_contenu :
VB:
Sub Lister_le_contenu(p_Path As String, ByRef p_Range As Range)
    Dim fso As New FileSystemObject
    Dim f As Folder
    Dim sf As Folder
    Dim myfile As File
    Dim myRange As Range
    Set myRange = p_Range
'Réference à l’objet du dossier
     Set f = fso.GetFolder(p_Path)
'Relever les sous-dossiers
     For Each sf In f.SubFolders
    myRange.Offset(1, 1).Value = sf.Name
    myRange.Offset(1, 2).Value = sf.Type
    Set myRange = myRange.Offset(1, 0)
    Next
'Relever les fichiers
     For Each myfile In f.Files
    myRange.Offset(1, 1).Value = myfile.Name
    myRange.Offset(1, 2).Value = myfile.Type
    myfile.Name
    Set myRange = myRange.Offset(1, 0)
    Call Lister_le_contenu(sf.path, myRange)
    Next
    Set p_Range = myRange
End Sub

Cependant pour les mots-clés, je ne sais pas comment m’y prendre pour relever un certain texte.

Mes fichiers Word sont disposés comme ceci :
1ère ligne : « Titre du document »
2ème ligne : « Mots-clés : abc, def, ghi, … »

Mes fichiers Excel sont disposés comme ceci :
A1 : « Titre du document »
A2 : « Mots-clés : abc, def, ghi, … »

J’ai déjà réussi à récupérer les mots clés dans des fichiers texte avec la macro :
(dans mon cas, j’ai écris ma ligne « Mots-clés : abc, def, ghi, … » sur la ligne 7).
VB:
Sub Mots_clés_fichier_txt()
    Dim ifile As Integer
    ifile = FreeFile
    Dim x As Long
    Dim Data As String
    Open "H:\test.txt" For Input As #ifile
    x = 1
    Do While Not EOF(1)
    Line Input #ifile, Data 'Récupère ta ligne
     If x = 7 Then Cells(1, 1) = Data 'Inscrit Data dans la 1ere case de ton classeur
     x = x + 1
    Loop
    Close #ifile
End Sub

Par contre, cette macro me fait récupérer ma valeur de mots-clés dans la case A1 d’Excel, et que pour un seul fichier. Or, je veux que ça se mette dans ma colonne D : D (D6 pour le Fichier1.xlsx, par exemple).

J’avais pensé à ouvrir, en macro, le fichier Word, le copier/coller en txt, copier la ligne avec les mots-clés, et supprimer ce fichier txt. Mais je n’y arrive pas du tout.


Merci de votre aide.
Bien à vous,
nicolo9.
 

Pièces jointes

  • Doc Excel.png
    20.3 KB · Affichages: 59
Dernière modification par un modérateur:

Discussions similaires

Réponses
16
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…