Suggerimento: le altre lingue sono tradotte da Google. Puoi visitare il English versione di questo link.
Connetti
x
or
x
x
Registrati
x

or

Come elencare tutti i nomi di file in una cartella e creare collegamenti ipertestuali per loro in Excel?

Per il lavoro quotidiano, potrebbe essere necessario importare più nomi di file da una cartella a un foglio di lavoro e creare collegamenti ipertestuali per ciascun file in modo da aprire il file rapidamente e facilmente. Forse, è possibile copiare e incollare i nomi dei file e creare manualmente un collegamento ipertestuale uno alla volta, ma questo farà perdere molto tempo se nella cartella ci sono centinaia di file. Oggi parlerò di alcuni metodi rapidi e interessanti per affrontare questo lavoro.

Elenca tutti i nomi di file in una cartella e crea collegamenti ipertestuali con il codice VBA

Elenca tutti i nomi di file in una cartella e crea collegamenti ipertestuali con Kutools per Excel


Elenca tutti i file in una cartella e crea i collegamenti ipertestuali per volta in volta:

Con Kutools for Excel's Elenco nomi file utilità, è possibile elencare tutti i file da una cartella che include le sottocartelle in un foglio di lavoro il prima possibile.

file di elenco dei documenti

Kutools for Excel: con più di 200 pratici componenti aggiuntivi di Excel, liberi di provare senza limitazioni nei giorni 60. Scarica e prova gratis ora!



Per elencare e creare collegamenti ipertestuali con file da una cartella, il seguente codice VBA può farti un favore.

1. Attiva un nuovo foglio di lavoro per inserire il risultato.

2. Tenere premuto il tasto ALT + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

3. Clic inserire > Moduloe incollare il seguente codice nel Modulo Finestra.

VBA: elenca tutti i nomi di file in una cartella e crea collegamenti ipertestuali

Sub Example1()
'Update 20150831
    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. Quindi premere F5 chiave per eseguire questo codice e scegliere la cartella in cui si desidera elencare i file dal Navigare finestra, vedi screenshot:

lista documenti crea collegamenti ipertestuali 1

5. Dopo aver specificato la cartella, fare clic su OK pulsante, e tutti i file nella cartella specifica sono stati elencati in un foglio di lavoro attivo con collegamenti ipertestuali, vedere screenshot:

lista documenti crea collegamenti ipertestuali 2

Note: Se ci sono sottocartelle nella cartella specifica, i file nelle sottocartelle non verranno elencati.


Per elencare tutti i file in una cartella e nelle relative sottocartelle e creare collegamenti ipertestuali per ciascun file, Kutools for Excel'S Elenco nomi file potrebbe farti un favore Con questa funzione, tutti i file nella cartella e nelle sottocartelle verranno elencati contemporaneamente con alcuni attributi, come il nome del file, la dimensione del file, l'ora di creazione, la cartella contenente e così via.

Kutools for Excel : con più di 300 pratici componenti aggiuntivi di Excel, liberi di provare senza limiti nei giorni 60.

Se hai installato Kutools for Excel, si prega di fare con i seguenti passaggi:

1. Clic Impresa > Importa / Esporta > Elenco nomi file, vedi screenshot:

lista documenti crea collegamenti ipertestuali 3

2. Nel Elenco nomi file finestra di dialogo, eseguire le seguenti operazioni:

(1.) Fare clic lista documenti crea collegamenti ipertestuali 5 pulsante per selezionare la cartella in cui si desidera elencare i nomi dei file;

(2.) Controlla Include i file nelle sottodirectory se vuoi elencare i nomi di file all'interno delle sottocartelle;

(3.) Specificare i tipi di file che si desidera trovare ed elencare sotto Tipo di file sezione;

(4.) Selezionare l'unità di dimensione del file che si desidera visualizzare;

(5.) Verifica Crea collegamenti ipertestuali nella parte inferiore sinistra della finestra di dialogo.

Scarica Kutools per Excel ora!

3. Quindi fare clic Ok pulsante, e tutti i file nella cartella e nelle sottocartelle sono stati elencati in un nuovo foglio di lavoro con i collegamenti ipertestuali di cui hai bisogno, vedi screenshot:

lista documenti crea collegamenti ipertestuali 6

Fare clic per conoscere ulteriori dettagli sull'utilità Elenco nomi file ...

Scarica e prova gratuita Kutools per Excel ora!


Kutools for Excel: con più di 200 pratici componenti aggiuntivi di Excel, liberi di provare senza limitazioni nei giorni 60. Scarica e prova gratis ora!


Articolo correlato:

Come elencare tutti i file nella cartella e nelle sottocartelle in un foglio di lavoro?


Kutools per Excel risolve la maggior parte dei problemi e aumenta la produttività del 80%

  • Riutilizzo: Inserire rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Cifra le celle con password; Crea mailing list e invia email ...
  • Super Formula Bar (modifica facilmente più righe di testo e formula); Layout di lettura (leggere e modificare facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere i dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Previeni celle duplicate; Confronta le gamme...
  • Seleziona Duplica o Unica Righe; Seleziona righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molti libri di esercizi; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento alla formula; Creazione automatica di riferimenti a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • estrarre il testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare subtotali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtro ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale di grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle basate su colonne chiave; Dividi i dati in più fogli; Converti in batch xls, xlsx e PDF...
  • Oltre alle potenti funzionalità di 300. Supporta Office / Excel 2007-2019 e 365. Supporta tutte le lingue. Facile implementazione nella tua azienda o organizzazione. Funzioni complete di prova gratuita di 30-day.
kte tab 201905

Scheda Office Porta l'interfaccia a schede a Office e semplifica notevolmente il lavoro

  • Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Editore, accesso, Visio e progetto.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la tua produttività di 50% e riduce centinaia di clic del mouse per te ogni giorno!
fondo officetab
Say something here...
symbols left.
You are guest ( Sign Up? )
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.
    Ellie · 8 months 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 · 8 months 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 · 1 months ago
        How would you code this to make hyperlinks for path and directory
        • To post as a guest, your comment is unpublished.
          skyyang · 14 days 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.
    jms · 10 months 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 · 1 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.
    Chaudhary Mubashir · 1 years ago
    Awesome ..thanks a lot. It really saved my time.
  • To post as a guest, your comment is unpublished.
    barry · 3 years ago
    Running the VBA code listed above, shows the selected directory is empty, when it is full of Excel files.