Note: The other languages of the website are Google-translated. Back to English
Se connecter  \/ 
x
or
x
INSCRIPTION  \/ 
x

or

 Comment répertorier tous les noms de fichiers dans un dossier et créer des liens hypertexte pour eux dans Excel?

Pour votre travail quotidien, vous devrez peut-être importer plusieurs noms de fichiers d'un dossier vers une feuille de calcul et créer des hyperliens pour chaque fichier afin d'ouvrir le fichier rapidement et facilement. Vous pouvez peut-être copier et coller les noms de fichiers et créer manuellement un lien hypertexte pour celui-ci, mais cela vous fera perdre beaucoup de temps s'il y a des centaines de fichiers dans le dossier. Aujourd'hui, je vais parler de quelques méthodes rapides et intéressantes pour faire face à ce travail.

Répertoriez tous les noms de fichiers dans un dossier et créez des hyperliens avec du code VBA

Répertoriez tous les noms de fichiers dans un dossier et créez des hyperliens avec Kutools for Excel


Pour répertorier et créer un lien hypertexte avec des fichiers d'un dossier, le code VBA suivant peut vous rendre service.

1. Activez une nouvelle feuille de calcul pour mettre le résultat.

2. Maintenez le ALT + F11 clés pour ouvrir le Microsoft Visual Basic pour applications fenêtre.

3. Cliquez insérer > Moduleet collez le code suivant dans le Module Fenêtre.

VBA: liste tous les noms de fichiers dans un dossier et crée des hyperliens

Sub Example1()
'Updateby Extendoffice
    Dim xFSO As Object 
    Dim xFolder As Object
    Dim xFile As Object
    Dim xFiDialog As FileDialog
    Dim xPath As String
    Dim I As Integer
    Set xFiDialog = Application.FileDialog(msoFileDialogFolderPicker)
    If xFiDialog.Show = -1 Then
        xPath = xFiDialog.SelectedItems(1)
    End If
    Set xFiDialog = Nothing
    If xPath = "" Then Exit Sub
    Set xFSO = CreateObject("Scripting.FileSystemObject")
    Set xFolder = xFSO.GetFolder(xPath)
    For Each xFile In xFolder.Files
        I = I + 1
        ActiveSheet.Hyperlinks.Add Cells(I, 1), xFile.Path, , , xFile.Name
    Next
End Sub

4. Puis appuyez F5 pour exécuter ce code et choisissez le dossier dans lequel vous souhaitez répertorier les fichiers du DECOUVREZ fenêtre, voir capture d'écran:

liste doc créer des hyperliens 1

5. Après avoir spécifié le dossier, cliquez sur OK bouton, et tous les fichiers du dossier spécifique ont été répertoriés dans la feuille de calcul active avec des hyperliens, voir capture d'écran:

liste doc créer des hyperliens 2

Notes: S'il y a des sous-dossiers dans votre dossier spécifique, les fichiers dans les sous-dossiers ne seront pas répertoriés.


Pour lister tous les fichiers à la fois dans un dossier et ses sous-dossiers et créer des hyperliens pour chaque fichier, Kutools pour Excel's Liste des noms de fichiers peut vous faire une faveur. Avec cette fonctionnalité, tous les fichiers du dossier et des sous-dossiers seront répertoriés en même temps avec certains attributs, tels que le nom du fichier, la taille du fichier, l'heure de création, le dossier contenant, etc.

Kutools pour Excel : avec plus de 300 compléments Excel pratiques, essai gratuit sans limitation en 30 jours.

Si vous avez installé Kutools pour Excel, veuillez suivre les étapes suivantes:

1. Cliquez Kutools Plus > Import & Export > Liste des noms de fichiers, voir capture d'écran:

2. Dans le Liste des noms de fichiers boîte de dialogue, veuillez effectuer les opérations suivantes:

(1.) Cliquez sur liste doc créer des hyperliens 5bouton pour sélectionner le dossier dont vous souhaitez lister les noms de fichiers;

(2.) Vérifier Inclure les fichiers dans les sous-répertoires si vous souhaitez lister les noms de fichiers dans les sous-dossiers, cochez Inclure les fichiers et dossiers cachés si vous souhaitez lister les fichiers cachés;

(3.) Spécifiez les types de fichiers que vous souhaitez rechercher et répertorier sous le Type de fichiers section;

(4.) Sélectionnez l'unité de taille de fichier que vous souhaitez afficher;

(5.) Vérifier Créer des hyperliens en bas à gauche de la boîte de dialogue.

Téléchargez Kutools for Excel maintenant!

3. Puis clique Ok bouton, et tous les fichiers du dossier et des sous-dossiers ont été répertoriés dans une nouvelle feuille de calcul avec les hyperliens selon vos besoins, voir capture d'écran:

liste doc créer des hyperliens 6

Cliquez pour en savoir plus sur l'utilitaire de liste des noms de fichiers…

Téléchargez et essayez gratuitement Kutools for Excel Now!


Kutools pour Excel: avec plus de 300 compléments Excel pratiques, essai gratuit sans limitation dans 30 jours. Téléchargez et essayez gratuitement maintenant!

Article connexe:

Comment répertorier tous les fichiers du dossier et des sous-dossiers dans une feuille de calcul?


Les meilleurs outils de productivité de bureau

Kutools for Excel résout la plupart de vos problèmes et augmente votre productivité de 80%

  • Réutilisation: Insérer rapidement formules complexes, graphiques et tout ce que vous avez utilisé auparavant; Crypter les cellules avec mot de passe; Créer une liste de diffusion et envoyer des e-mails ...
  • Barre Super Formula (modifiez facilement plusieurs lignes de texte et de formule); Disposition de lecture (lire et modifier facilement un grand nombre de cellules); Coller dans la plage filtrée...
  • Fusionner les cellules / lignes / colonnes sans perdre de données; Contenu des cellules divisées; Combiner des lignes / colonnes en double... Empêcher les cellules en double; Comparer les gammes...
  • Sélectionnez Dupliquer ou Unique Lignes; Sélectionnez les lignes vides (toutes les cellules sont vides); Super Find et Fuzzy Find dans de nombreux classeurs; Sélection aléatoire ...
  • Copie exacte Plusieurs cellules sans changer la référence de formule; Créer automatiquement des références à plusieurs feuilles; Insérer des puces, Cases à cocher et plus encore ...
  • Extrait du texte, Ajouter du texte, Supprimer par position, Supprimer l'espace; Créer et imprimer des sous-totaux de pagination; Conversion entre le contenu et les commentaires des cellules...
  • Super filtre (enregistrer et appliquer des schémas de filtrage à d'autres feuilles); Tri avancé par mois / semaine / jour, fréquence et plus; Filtre spécial par gras, italique ...
  • Combiner des classeurs et des feuilles de travail; Fusionner les tableaux en fonction des colonnes clés; Diviser les données en plusieurs feuilles; Conversion par lots xls, xlsx et PDF...
  • Plus de 300 fonctionnalités puissantes. Prend en charge Office / Excel 2007-2019 et 365. Prend en charge toutes les langues. Déploiement facile dans votre entreprise ou organisation. Essai gratuit de 30 jours. Garantie de remboursement de 60 jours.
onglet kte 201905

Office Tab apporte une interface à onglets à Office et simplifie considérablement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
bas de cabine
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    SerajB · 7 months ago
    @skyyang Hi,
    Could this code be edited to hyperlink path for files instead of folders. For example, instead of hyperlinking the paths of the folders inside Folder1, it would hyperlink the paths of all files in Folder1 (i need the text to display as the path of the file, not the file name), that would be the perfect use case for me.
    appreciate any help you could offer :)
  • To post as a guest, your comment is unpublished.
    Ellie · 2 years ago
    How would I change this code to have it list folder names rather than file names? And how would I change it to check subfolders for files?
    • To post as a guest, your comment is unpublished.
      skyyang · 2 years ago
      Hi, Ellie,
      To list all folder and subfolder names from a directory, the below VBA code can help you, please try, hopt it can help you.

      Sub FolderNames()
      Application.ScreenUpdating = False
      Dim xPath As String
      Dim xWs As Worksheet
      Dim fso As Object, j As Long, folder1 As Object
      With Application.FileDialog(msoFileDialogFolderPicker)
      .Title = "Choose the folder"
      .Show
      End With
      On Error Resume Next
      xPath = Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1) & "\"
      Application.Workbooks.Add
      Set xWs = Application.ActiveSheet
      xWs.Cells(1, 1).Value = xPath
      xWs.Cells(2, 1).Resize(1, 5).Value = Array("Path", "Dir", "Name", "Date Created", "Date Last Modified")
      Set fso = CreateObject("Scripting.FileSystemObject")
      Set folder1 = fso.getFolder(xPath)
      getSubFolder folder1
      xWs.Cells(2, 1).Resize(1, 5).Interior.Color = 65535
      xWs.Cells(2, 1).Resize(1, 5).EntireColumn.AutoFit
      Application.ScreenUpdating = True
      End Sub
      Sub getSubFolder(ByRef prntfld As Object)
      Dim SubFolder As Object
      Dim subfld As Object
      Dim xRow As Long
      For Each SubFolder In prntfld.SubFolders
      xRow = Range("A1").End(xlDown).Row + 1
      Cells(xRow, 1).Resize(1, 5).Value = Array(SubFolder.Path, Left(SubFolder.Path, InStrRev(SubFolder.Path, "\")), SubFolder.Name, SubFolder.DateCreated, SubFolder.DateLastModified)
      Next SubFolder
      For Each subfld In prntfld.SubFolders
      getSubFolder subfld
      Next subfld
      End Sub
      • To post as a guest, your comment is unpublished.
        yuri · 2 years ago
        How would you code this to make hyperlinks for path and directory
        • To post as a guest, your comment is unpublished.
          skyyang · 2 years ago
          Hi, yuri,
          To solve your problem, please try the following code:

          Sub FolderNames()
          Application.ScreenUpdating = False
          Dim xPath As String
          Dim xWs As Worksheet
          Dim xRg As Range
          Dim fso As Object, j As Long, folder1 As Object
          With Application.FileDialog(msoFileDialogFolderPicker)
          .Title = "Choose the folder"
          .Show
          End With
          On Error Resume Next
          xPath = Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1) & "\"
          Application.Workbooks.Add
          Set xWs = Application.ActiveSheet
          Set xRg = xWs.Cells(1, 1)
          xRg.Value = xPath
          xWs.Hyperlinks.Add Anchor:=xRg, Address:=xPath, TextToDisplay:=xPath
          xWs.Cells(2, 1).Resize(1, 5).Value = Array("Path", "Dir", "Name", "Date Created", "Date Last Modified")
          Set fso = CreateObject("Scripting.FileSystemObject")
          Set folder1 = fso.GetFolder(xPath)
          getSubFolder folder1
          xWs.Cells(2, 1).Resize(1, 5).Interior.Color = 65535
          xWs.Cells(2, 1).Resize(1, 5).EntireColumn.AutoFit
          Application.ScreenUpdating = True
          End Sub
          Sub getSubFolder(ByRef prntfld As Object)
          Dim SubFolder As Object
          Dim subfld As Object
          Dim xRow As Long
          Dim xStr As String
          Dim xRg As Range
          For Each SubFolder In prntfld.SubFolders
          xRow = Range("A1").End(xlDown).Row + 1
          Cells(xRow, 1).Resize(1, 5).Value = Array(SubFolder.Path, Left(SubFolder.Path, InStrRev(SubFolder.Path, "\")), SubFolder.Name, SubFolder.DateCreated, SubFolder.DateLastModified)
          Set xRg = Cells(xRow, 1)
          xRg.Worksheet.Hyperlinks.Add Anchor:=xRg, Address:=xRg.Value, TextToDisplay:=xRg.Value
          Set xRg = Cells(xRow, 2)
          xRg.Worksheet.Hyperlinks.Add Anchor:=xRg, Address:=xRg.Value, TextToDisplay:=xRg.Value
          Next SubFolder
          For Each subfld In prntfld.SubFolders
          getSubFolder subfld
          Next subfld
          End Sub
          • To post as a guest, your comment is unpublished.
            SerajB · 7 months ago
            @skyyang Hi,
            Could this code be edited to hyperlink path for files instead of folders. For example, instead of hyperlinking the paths of the folders inside Folder1, it would hyperlink the paths of all files in Folder1 (i need the text to display as the path of the file, not the file name), that would be the perfect use case for me.
            appreciate any help you could offer :)
          • To post as a guest, your comment is unpublished.
            SerajB · 7 months ago
            @skyyang Hi,
            Could this code be edited to hyperlink path for files instead of folders. For example, instead of hyperlinking the paths of the folders inside Folder1, it would hyperlink the paths of all files in Folder1 (i need the text to display as the path of the file, not the file name), that would be the perfect use case for me. 
            appreciate any help you could offer :)
  • To post as a guest, your comment is unpublished.
    jms · 3 years ago
    "VBA: List all filenames in a folder and create hyperlinks" is great! It works perfectly! Thank you for posting! One question... Now that you told us how to add links from folder, is it possible to use those links to get information from say one or two different sheets in each of the files listed? They would be the same cells for each of the files we now have a list for. This would help create a comprehensive contents with active links to otherwise unintelligible file names.
  • To post as a guest, your comment is unpublished.
    alice · 3 years ago
    Great thanks although can not view the files in the selected directory as barry said, it creates hyperlinks for all files in that directory anyway.
  • To post as a guest, your comment is unpublished.
    mubashirazizch@gmail.com · 4 years ago
    Awesome ..thanks a lot. It really saved my time.
  • To post as a guest, your comment is unpublished.
    barry · 5 years ago
    Running the VBA code listed above, shows the selected directory is empty, when it is full of Excel files.