KutoolsforOffice — Uma solução, cinco ferramentas poderosas.Fazer mais com menos esforço.

Criar múltiplas pastas e subpastas a partir de uma lista de dados no Excel

AutorXiaoyang Data de Modificação

Imagine que tem uma lista de nomes de colaboradores num intervalo de uma folha de cálculo e pretende criar pastas individuais para cada um, de modo a armazenar as respetivas informações. Criar manualmente cada pasta pode ser moroso — mas existem métodos eficientes para acelerar este processo. Neste guia, partilho várias abordagens práticas para gerar rapidamente pastas com base nos valores indicados nas células.

Uma captura de ecrã de uma folha de cálculo do Excel contendo uma lista de nomes de colaboradores para criação de pastas

Criar pastas com base nos valores das células

Criar pastas e subpastas com base em valores de células com código VBA


Criar pastas com base nos valores das células

Nesta secção, exploramos diversos métodos em pormenor, com instruções passo a passo abrangentes para criar pastas com base numa lista de valores de células — de forma rápida e sem esforço.

Criar pastas a partir de uma lista utilizando o comando MD e o Bloco de Notas

Transformar uma lista do Excel em pastas usando o comando MD e o Bloco de Notas é um truque inteligente que combina scripts batch simples com a potência do Excel para manter tudo perfeitamente organizado. Este método é ideal para criar múltiplas pastas rapidamente, sem precisar fazê-lo manualmente. Eis um guia passo a passo para executar esta tarefa:

Passo 1: Utilize o comando MD para Criar fórmulas

Copie ou introduza a seguinte fórmula numa célula vazia junto ao seu primeiro valor (por exemplo, B1) e, depois, arraste a alça de preenchimento para aplicar a fórmula a todos os itens da sua lista.

="MD "&A1

Uma captura de ecrã que mostra a fórmula do comando MD utilizada no Excel para criar pastas

Passo 2: Copie e cole as fórmulas para um ficheiro do Bloco de Notas

  1. Prima «Ctrl + C» para copiar as células que contêm a fórmula do comando MD.
  2. Abra o Bloco de Notas e prima «Ctrl + V» para colar os comandos num arquivo gerado.
    Uma captura de ecrã do Bloco de Notas a exibir comandos MD copiados do Excel para criação de pastas

Passo 3: Guarde o ficheiro do Bloco de Notas como ficheiro .bat

Clique em «Guardar como» no separador «Ficheiro» do Bloco de Notas. Na caixa de diálogo «Guardar como», selecione um diretório onde pretenda criar várias pastas, dê um nome ao ficheiro com a extensão .bat e, por fim, clique em «Guardar». Veja a captura de ecrã:
Uma captura de ecrã da caixa de diálogo Guardar Como no Bloco de Notas para guardar o ficheiro com a extensão .bat

Passo 4: Faça duplo clique no ficheiro .bat para gerar várias pastas

  1. Feche o ficheiro do Bloco de Notas e navegue até à pasta onde guardou anteriormente o ficheiro .bat.
  2. Agora, prepare-se para a magia: faça duplo clique no ficheiro e veja várias pastas a serem criadas automaticamente, todas de uma só vez. Veja a demonstração abaixo:
    Uma demonstração de como clicar duas vezes num ficheiro .bat para criar várias pastas a partir de valores do Excel
 

Criar pastas a partir de uma lista utilizando uma ferramenta poderosa – Kutools para Excel

Com a poderosa funcionalidade «Criar Pasta com Base no Intervalo» do Kutools para Excel, pode criar pastas de forma fácil e rápida a partir de uma lista do Excel. E não se limita apenas a pastas básicas: o Kutools permite-lhe ainda criar estruturas complexas com subpastas multinível, tudo numa única operação. Com apenas alguns passos simples, transforme os seus dados do Excel num sistema de pastas perfeitamente organizado e aumente significativamente a sua produtividade.

Kutools para Exceloferece mais de 300 funcionalidades avançadas para simplificar tarefas complexas, potenciando a criatividade e a eficiência.Integrado com capacidades de IA, o Kutools automatiza tarefas com precisão, tornando a gestão de dados descomplicada.Informações detalhadas sobre Kutools para Excel...         Teste gratuito...

Após instalar o Kutools para Excel, clique em «KUTOOLS PLUS» > «Importar/Exportar» > «Criar Pasta com Base no Intervalo» para abrir a caixa de diálogo Criar Pasta com Base no Intervalo:

  1. Selecione os valores das células com base nos quais pretende criar pastas;
  2. Em seguida, clique no botão Uma captura de ecrã do botão utilizado para selecionar uma pasta de destinopara especificar a pasta de destino onde pretende guardar as pastas;
  3. Por fim, clique no botão OK.
    Uma captura de ecrã da caixa de diálogo Kutools Criar Pastas a Partir do Conteúdo das Células no Excel

Resultado:

O Kutools processará a lista da sua folha e criará uma pasta para cada entrada no destino indicado. Navegue até à pasta de destino para ver o resultado. Veja a captura de ecrã:
Uma captura de ecrã que mostra o resultado das pastas criadas por Kutools for Excel

Dicas:
  1. Esta funcionalidade útil permite-lhe criar pastas e as respetivas subpastas exatamente como precisa. Basta introduzir os nomes das pastas e subpastas nas células, separando cada nível com uma barra invertida (\). O conteúdo de cada célula servirá como guia para configurar a estrutura desejada de pastas e subpastas.
    Uma captura de ecrã que mostra pastas com subpastas criadas com base nos valores das células do Excel
    Depois, basta aplicar a funcionalidade «Criar Pasta com Base no Intervalo» — todas as pastas e respetivas subpastas serão criadas com sucesso. Veja a imagem:
    Uma captura de ecrã que mostra pastas com subpastas criadas com base nos valores das células do Excel
  2. Para utilizar esta funcionalidade, por favor descarregue e instale o Kutools para Excel.
 

Criar pastas a partir de uma lista utilizando código VBA

Utilizar código VBA no Excel transforma a tarefa tediosa de criar pastas a partir de uma lista num processo rápido e totalmente automatizado. Esta secção mostra-lhe como aplicar código VBA para gerar pastas com eficiência.

Passo 1: Abra o editor de módulos VBA e copie o código

  1. Mantenha premidas as teclas «ALT + F11» no Excel e abrirá a janela «Microsoft Visual Basic for Applications».
  2. Clique em «Inserir» > «Módulo» e cole o seguinte código na Janela do Módulo.
    Código VBA: Criar pastas com base numa lista de valores de células
    Sub CreateFoldersFromSelection()
    'Updateby Extendoffice
        Dim FolderPath As String
        Dim Cell As Range
        Dim SelectedRange As Range
        Dim FolderName As String
        On Error Resume Next
        Set SelectedRange = Application.InputBox("Select the range with folder names", "Kutools for Excel", Type:=8)
        If SelectedRange Is Nothing Then Exit Sub
        On Error GoTo 0
        
        With Application.FileDialog(msoFileDialogFolderPicker)
            .Title = "Select the destination Folder"
            .AllowMultiSelect = False
            If .Show <> -1 Then Exit Sub
            FolderPath = .SelectedItems(1) & "\"
        End With
        
        For Each Cell In SelectedRange
            FolderName = FolderPath & Cell.Value
            If Cell.Value <> "" And Not FolderExists(FolderName) Then
                MkDir FolderName
            End If
        Next Cell
    End Sub
    
    Function FolderExists(ByVal Path As String) As Boolean
        On Error Resume Next
        FolderExists = (GetAttr(Path) And vbDirectory) = vbDirectory
        On Error GoTo 0
    End Function
    

Passo 2: Execute o código

  1. Após colar este código, prima a tecla F5 para o executar. Na caixa de diálogo que surgir, selecione os valores das células a partir dos quais pretende criar pastas e, em seguida, clique em OK.
    Uma captura de ecrã da mensagem VBA para selecionar valores de células para criação de pastas no Excel
  2. Depois, na janela seguinte «Selecionar a Pasta de Destino», indique o caminho onde pretende guardar as pastas criadas e clique no botão OK. Veja a captura de ecrã:
    Uma captura de ecrã da caixa de diálogo para selecionar uma pasta de destino para as pastas criadas por VBA no Excel

Resultado:

Após executar o código VBA, aceda ao diretório de destino para visualizar o resultado. Lá encontrará as pastas recém-criadas, cada uma correspondente a um item da sua lista do Excel. Veja a captura de ecrã:
Uma captura de ecrã que mostra o resultado das pastas criadas por VBA

Dicas:
  1. Se houver entradas duplicadas nas células, o código criará apenas uma pasta.
  2. Se verificar que utiliza frequentemente este código, considere guardar a sua pasta de trabalho no formato «Pasta de Trabalho Ativada para Macros do Excel». Ao fazê-lo, o código fica preservado na pasta de trabalho, permitindo-lhe executá-lo diretamente no futuro sem ter de o reintroduzir ou reimportar.

Criar pastas e subpastas com base em valores de células com código VBA

Por vezes, poderá encontrar-se numa situação em que precisa de criar não só pastas, mas também as respetivas subpastas, tudo com base nos dados contidos nas células do Excel. Para o ajudar nesta tarefa, apresento-lhe aqui um código VBA.

Passo 1: Prepare os dados

Primeiro, introduza os dados conforme ilustrado na seguinte captura de ecrã: coloque os nomes principais das pastas na primeira coluna e os nomes das subpastas na segunda coluna.
Uma captura de ecrã de dados no Excel com colunas para pastas e subpastas

Passo 2: Abra o editor de módulos VBA e copie o código

  1. Mantenha premidas as teclas «ALT + F11» no Excel e abrirá a janela «Microsoft Visual Basic for Applications».
  2. Clique em «Inserir» > «Módulo» e cole o seguinte código na Janela do Módulo.
    Código VBA: Criar pastas e subpastas com base em valores de células
    Sub CreateFoldersAndSubfoldersWithUserInput()
    'Updateby Extendoffice
        Dim Rng As Range
        Dim Cell As Range
        Dim basePath As String
        Dim fldrPicker As FileDialog
        Dim FolderPath As String, subfolderPath As String
        On Error Resume Next
        Set Rng = Application.InputBox("Select the range of cells (two columns: one is folder column, another s subfolder column):", "Kutools for Excel", Type:=8)
        If Rng Is Nothing Then Exit Sub
        On Error GoTo 0
        Set fldrPicker = Application.FileDialog(msoFileDialogFolderPicker)
        With fldrPicker
            .Title = "Select the Base Folder Path"
            .AllowMultiSelect = False
            If .Show <> -1 Then Exit Sub
            basePath = .SelectedItems(1)
        End With
        If Right(basePath, 1) <> "\" Then basePath = basePath & "\"
        For Each Cell In Rng.Columns(1).Cells
            If Not Cell.Value = "" Then
                FolderPath = basePath & Cell.Value
                If Not FolderExists(FolderPath) Then MkDir FolderPath
                If Not Cell.Offset(0, 1).Value = "" Then
                    subfolderPath = FolderPath & "\" & Cell.Offset(0, 1).Value
                    If Not FolderExists(subfolderPath) Then MkDir subfolderPath
                End If
            End If
        Next Cell
    End Sub
    
    Function FolderExists(FolderPath As String) As Boolean
        On Error Resume Next
        FolderExists = (GetAttr(FolderPath) And vbDirectory) = vbDirectory
        On Error GoTo 0
    End Function
    

Passo 3: Execute o código

  1. Após colar este código, prima a tecla F5 para o executar. Na caixa de diálogo que surge, selecione os valores das células a partir dos quais pretende criar pastas e, em seguida, clique em OK.
    Uma captura de ecrã da mensagem VBA para selecionar intervalos de células para criar pastas e subpastas no Excel
  2. Na janela seguinte, indique o caminho de destino onde pretende guardar as pastas criadas e, de seguida, clique no botão OK. Veja a captura de ecrã:
    Uma captura de ecrã da caixa de diálogo VBA para selecionar um caminho de pasta base no Excel

Resultado:

Após executar o código VBA, aceda ao diretório de destino para visualizar o resultado. Verificará que as pastas e as respetivas subpastas — conforme indicado pelos valores das células — foram criadas com sucesso, tal como ilustrado na seguinte captura de ecrã:
Uma captura de ecrã que mostra pastas e subpastas criadas utilizando código VBA no Excel

Dicas:
  1. Este código permite apenas criar as pastas principais e as respetivas subpastas de primeiro nível.
  2. Se verificar que utiliza frequentemente este código, considere guardar a sua pasta de trabalho no formato «Pasta de Trabalho Ativada para Macros do Excel». Esta opção preserva o código diretamente na pasta de trabalho, permitindo-lhe executá-lo imediatamente no futuro, sem precisar de o reintroduzir ou reimportar.

Artigos Relacionados:

  • Listar todas as pastas e subpastas no Excel
  • Já enfrentou o desafio de listar todas as pastas e subpastas de um diretório específico numa folha de cálculo? No Excel, não existe uma forma rápida e prática de obter, de uma só vez, os nomes de todas as pastas num determinado diretório. Para resolver esta tarefa, este artigo pode ser a solução ideal para si.
  • Copiar ou mover ficheiros de uma pasta para outra com base numa lista
  • Se tiver uma lista de nomes de ficheiros numa coluna de uma folha de cálculo e esses ficheiros estiverem guardados numa pasta do seu computador, mas precisar agora de mover ou copiar apenas os ficheiros cujos nomes constam na folha de cálculo da pasta original para outra — tal como ilustrado na imagem seguinte —, como poderá concluir esta tarefa da forma mais rápida possível no Excel?
  • Renomear múltiplos ficheiros de uma pasta
  • Talvez muitos de nós já tenham enfrentado o problema de ter de renomear múltiplos ficheiros numa pasta; renomear os nomes dos ficheiros um a um tornar-nos-ia loucos se houvesse centenas ou milhares de ficheiros nessa pasta. Existirão boas funcionalidades para nos ajudar nesta tarefa?