Skip to main content

Como listar todos os arquivos em uma pasta e subpastas em uma planilha?

Author: Xiaoyang Last Modified: 2025-06-04

Você já tentou listar todos os nomes de arquivos de uma pasta em uma planilha, incluindo os arquivos localizados em suas subpastas? Na verdade, não há uma maneira direta de listar os nomes de arquivos de uma pasta e sua subpasta no Excel. No entanto, hoje vou apresentar alguns truques rápidos para resolver essa tarefa.

Listar todos os nomes de arquivos em uma pasta e subpasta com código VBA

Listar todos os nomes de arquivos em uma pasta e subpasta rapidamente e facilmente com o Kutools para Excel


Listar todos os nomes de arquivos em uma pasta e subpasta com código VBA

Normalmente, o Excel não possui um recurso interno para lidar com essa tarefa, mas você pode aplicar o seguinte código VBA para resolver esse problema.

1. Ative uma nova planilha que listará os nomes dos arquivos.

2. Pressione as teclas ALT + F11 no Excel, e isso abrirá a janela Microsoft Visual Basic for Applications.

3. Clique em Inserir > Módulo e cole o seguinte código na Janela do Módulo.

Código VBA: Listar todos os nomes de arquivos em uma pasta e subpasta

Sub MainList()
'Updateby Extendoffice
Set folder = Application.FileDialog(msoFileDialogFolderPicker)
If folder.Show <> -1 Then Exit Sub
xDir = folder.SelectedItems(1)
Call ListFilesInFolder(xDir, True)
End Sub
Sub ListFilesInFolder(ByVal xFolderName As String, ByVal xIsSubfolders As Boolean)
Dim xFileSystemObject As Object
Dim xFolder As Object
Dim xSubFolder As Object
Dim xFile As Object
Dim rowIndex As Long
Set xFileSystemObject = CreateObject("Scripting.FileSystemObject")
Set xFolder = xFileSystemObject.GetFolder(xFolderName)
rowIndex = Application.ActiveSheet.Range("A65536").End(xlUp).Row + 1
For Each xFile In xFolder.Files
  Application.ActiveSheet.Cells(rowIndex, 1).Formula = xFile.Name
  rowIndex = rowIndex + 1
Next xFile
If xIsSubfolders Then
  For Each xSubFolder In xFolder.SubFolders
    ListFilesInFolder xSubFolder.Path, True
  Next xSubFolder
End If
Set xFile = Nothing
Set xFolder = Nothing
Set xFileSystemObject = Nothing
End Sub
Function GetFileOwner(ByVal xPath As String, ByVal xName As String)
Dim xFolder As Object
Dim xFolderItem As Object
Dim xShell As Object
xName = StrConv(xName, vbUnicode)
xPath = StrConv(xPath, vbUnicode)
Set xShell = CreateObject("Shell.Application")
Set xFolder = xShell.Namespace(StrConv(xPath, vbFromUnicode))
If Not xFolder Is Nothing Then
  Set xFolderItem = xFolder.ParseName(StrConv(xName, vbFromUnicode))
End If
If Not xFolderItem Is Nothing Then
  GetFileOwner = xFolder.GetDetailsOf(xFolderItem, 8)
Else
  GetFileOwner = ""
End If
Set xShell = Nothing
Set xFolder = Nothing
Set xFolderItem = Nothing
End Function

4. Após colar o código no Módulo, pressione a tecla F5 para executar este código, e uma caixa de diálogo Macros aparecerá. Selecione o nome da macro MainList e clique no botão Executar, veja a captura de tela:

a screenshot of running the VBA code

5. E na janela Procurar, por favor, selecione a pasta da qual deseja listar todos os nomes de arquivos, incluindo as subpastas, veja a captura de tela:

a screenshot of selecting the folder you want to list all filenames including the subfolders

6. Depois de especificar a pasta, clique no botão OK, e todos os nomes de arquivos na pasta e suas subpastas serão listados na planilha atual a partir da célula A2, veja as capturas de tela:

a screenshot of the seleted folder
a screenshot of an arrow
a screenshot listing all filenames from the selected folder and its subfolders

Listar todos os nomes de arquivos em uma pasta e subpasta rapidamente e facilmente com o Kutools para Excel

Com o código acima, você pode apenas listar os nomes de arquivos. Às vezes, você precisa listar outros atributos, como tamanho do arquivo, tipo de arquivo, hora de criação, pasta contendo e assim por diante. O Kutools para Excel contém uma função útil – Lista de Nomes de Arquivos, com este recurso, você pode listar rapidamente todos ou tipos específicos de nomes de arquivos em uma pasta e suas subpastas.

Após baixar e instalar o Kutools para Excel, siga os passos abaixo:

1. Clique em Empresa > Importar e Exportar > Lista de Nomes de Arquivos, veja a captura de tela:

a screenshot of enabling the Filename List feature of Kutools

2. Na caixa de diálogo Lista de Nomes de Arquivos, faça as seguintes operações:

A: Clique a screenshot of the folder iconno botão para escolher a pasta da qual deseja listar os nomes de arquivos;

B: Especifique o tipo de arquivo que deseja listar na seção Tipo de arquivo;

C: Selecione uma unidade de tamanho de arquivo que deseja exibir na seção Unidade de tamanho de arquivo.

Observação: Para listar os nomes de arquivos das subpastas, marque a opção Incluir arquivos em subdiretórios. Você também pode marcar a opção Incluir arquivos e pastas ocultos conforme necessário. Se você marcar a opção Criar hiperlinks, isso criará hiperlinks para cada nome de arquivo e pasta.

a screenshot of configuring the Filename List dialog box

3. Em seguida, clique no botão OK, todos os arquivos contidos na pasta selecionada e suas subpastas serão exibidos com os seguintes atributos em uma nova planilha. Veja a captura de tela:

a screenshot listing the details of files of the selected folder

Clique para saber mais detalhes sobre este utilitário Lista de Nomes de Arquivos.

Baixe e experimente gratuitamente o Kutools para Excel agora!


Melhores Ferramentas de Produtividade para Office

🤖 Assistente AI do KUTOOLS: Revolucione a análise de dados com base em: Execução Inteligente | Gerar Código | Criar Fórmulas Personalizadas | Analisar Dados e Gerar Gráficos | Invocar Funções Aprimoradas
Recursos Populares: Encontrar, Destacar ou Marcar Duplicatas | Excluir Linhas em Branco | Combinar Colunas ou Endereço sem Perder Dados | Arredondar...
Super PROC: PROC com Múltiplos Critérios | PROC com Múltiplos Valores | Procura em várias planilhas | Correspondência Fuzzy...
Lista Suspensa Avançada: Crie rapidamente uma Lista Suspensa | Lista Suspensa Dependente | Lista Suspensa com Múltipla Seleção...
Gerenciador de Colunas: Adicionar um Número Específico de Colunas | Mover Colunas | Alternar Estado de Visibilidade das Colunas Ocultas | Comparar Intervalo & Colunas...
Recursos em Destaque: Grade de foco | Visualização de Design | Barra de fórmulas aprimorada | Gerenciador de Pasta de trabalho & Planilha | Biblioteca de AutoTexto | Selecionador de Data | Mesclar Dados | Criptografar/Descriptografar Células | Enviar Email por Lista | Super Filtro | Filtro Especial (filtrar negrito/itálico/tachado...)...
Top15 Conjuntos de Ferramentas:12 Ferramentas de Texto (Adicionar Texto, Excluir Caracteres Específicos, ...) | Mais de50 Tipos de Gráficos (Gráfico de Gantt, ...) | Mais de40 Fórmulas Práticas (Calcular a idade com base na data de nascimento, ...) |19 Ferramentas de Inserção (Inserir Código QR, Inserir Imagem a partir do Caminho, ...) |12 Ferramentas de Conversão (Converter em Palavras, Conversão de Moeda, ...) |7 Ferramentas de Mesclar & Dividir (Mesclar Linhas Avançado, Dividir Células, ...) | ... e muito mais

Potencialize suas habilidades no Excel com o Kutools para Excel e experimente uma eficiência sem igual. O Kutools para Excel oferece mais de300 recursos avançados para aumentar sua produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...


O Office Tab traz interface com abas para o Office e facilita muito o seu trabalho

  • Habilite a edição e leitura com abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novas abas na mesma janela, em vez de abrir novas janelas.
  • Aumente sua produtividade em50% e reduza centenas de cliques do mouse todos os dias!