Совет. Другие языки - Google-Translated. Вы можете посетить English версия этой ссылки.
Войти
x
or
x
x
Регистрация
x

or

Как перечислять все имена файлов в папке и создавать гиперссылки для них в Excel?

Для вашей повседневной работы вам может потребоваться импортировать несколько файлов из папки на рабочий лист и создавать гиперссылки для каждого файла, чтобы они быстро и легко открывали файл. Возможно, вы можете копировать и вставлять имена файлов и создавать гиперссылку для него один за другим вручную, но это будет тратить много времени, если в папке сотни файлов. Сегодня я расскажу о некоторых быстрых и интересных методах борьбы с этой работой.

Список всех имен файлов в папке и создание гиперссылок с кодом VBA

Перечислите все имена файлов в папке и создайте гиперссылки с помощью Kutools for Excel


Перечислите все файлы в папке и сразу создайте гиперссылки:

Kutools for Excel's Список имен файлов утилита, вы можете как можно скорее перечислить все файлы из папки, которая включает в себя подпапки в рабочий лист.

файлы списка документов

Kutools for Excel: с более чем 200 удобными надстройками Excel, бесплатно попробовать без ограничений в 60-дни. Скачать и бесплатно пробную версию!



Чтобы перечислить и создать гиперссылку с файлами из папки, следующий код VBA может оказать вам услугу.

1, Активируйте новый рабочий лист, чтобы поместить результат.

2, Удерживайте ALT + F11 , чтобы открыть Microsoft Visual Basic для приложений окна.

3. Щелчок Вставить > модуль, и вставьте следующий код в модуль Окно.

VBA: список всех имен файлов в папке и создание гиперссылок

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, Затем нажмите F5 для запуска этого кода и выберите папку, в которую вы хотите перечислить файлы из просмотреть окно, см. снимок экрана:

Список doc создает гиперссылки 1

5, После указания папки нажмите OK , и все файлы в определенной папке были указаны в активной рабочей таблице с гиперссылками, см. снимок экрана:

Список doc создает гиперссылки 2

Внимание: Если в вашей папке есть подпапки, файлы в подпапках не будут указаны.


Чтобы просмотреть все файлы как в папке, так и вложенных папках и создать гиперссылки для каждого файла, Kutools for ExcelАвтора Список имен файлов может оказать вам услугу. С помощью этой функции все файлы в папке и вложенных папках будут перечислены сразу с некоторыми атрибутами, такими как имя файла, размер файла, время создания, папка и т. Д.

Kutools for Excel : с более чем 300 удобными надстройками Excel, бесплатно попробовать без ограничений в 60-дни.

Если вы установили Kutools for Excel, выполните следующие действия:

1. Щелчок Предприятие > Импорт / Экспорт > Список имен файлов, см. снимок экрана:

Список doc создает гиперссылки 3

2. в Список имен файлов в диалоговом окне выполните следующие действия:

(1.) Нажмите Список doc создает гиперссылки 5 , чтобы выбрать папку, в которую вы хотите указать имена файлов;

(2.) Проверьте IФайлы nclude в подкаталогах если вы хотите перечислить имена файлов в подпапках;

(3.) Укажите типы файлов, которые вы хотите найти и Тип файлов раздел;

(4.) Выберите блок размера файла, который вы хотите отобразить;

(5.) Проверить Создать гиперссылки в левой нижней части диалогового окна.

Загрузите Kutools для Excel прямо сейчас!

3, Затем нажмите Ok и все файлы в папке и вложенных папках были указаны на новом листе с гиперссылками, как вам нужно, см. снимок экрана:

Список doc создает гиперссылки 6

Нажмите, чтобы узнать больше о утилите списка имен файлов ...

Скачать и бесплатно пробную версию Kutools для Excel сейчас!


Kutools for Excel: с более чем 200 удобными надстройками Excel, бесплатно попробовать без ограничений в 60-дни. Скачать и бесплатно пробную версию!


Связанная статья:

Как перечислить все файлы в папке и подпапках в листе?


  • Супер Формула Бар (легко редактировать несколько строк текста и формул); Макет чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон...
  • Объединить ячейки / строки / столбцы и хранение данных; Содержание сплит-клеток; Объедините дублирующиеся строки и сумму / среднее... предотвратить повторяющиеся клетки; Сравнить диапазоны...
  • Выберите Дубликат или Уникальный Ряды; Выберите пустые строки (все ячейки пусты); Супер найти и нечеткая находка во многих рабочих тетрадях; Случайный выбор ...
  • Точная копия Несколько ячеек без изменения формулы ссылки; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое ...
  • Любимые и быстро вставляемые формулы, Диапазоны, графики и рисунки; Шифрование ячеек с паролем; Создать список рассылки и отправлять электронные письма ...
  • Извлечение текстаДобавить текст, Удалить по позиции, Удалить пространство; Создание и печать промежуточных итогов подкачки; Преобразование содержимого ячеек и комментариев...
  • Суперфильтр (сохранить и применить схемы фильтров к другим листам); Расширенный поиск по месяцам / неделям / дням, частоте и более; Специальный фильтр жирным шрифтом, курсивом ...
  • Объединить рабочие тетради и рабочие листы; Объединение таблиц на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF...
  • Работает с Office 2007-2019 и 365 и поддерживает все языки. Это легко развернуть в вашей компании. Полнофункциональная 60-дневная бесплатная пробная версия.
вкладка kte 201905
  • Включить редактирование и чтение с вкладками в Word, Excel, PowerPoint, Издатель, Доступ, Visio и Проект.
  • Открывайте и создавайте несколько документов в новых вкладках одного и того же окна, а не в новых окнах.
  • Увеличивает вашу производительность на 50% и уменьшает сотни щелчков мышью для вас каждый день!
нижняя часть офиса
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 · 6 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 · 6 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.
    jms · 8 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.