Renomear Arquivos com VBA Excel – Planilha para renomear arquivos
Neste artigo você tem uma planilha gratuita para renomear arquivos utilizando VBA no Excel. A planilha é gratuita, veja no vídeo acima e também descrito abaixo como ela funciona.
No vídeo explicamos também o funcionamento do código fonte que é totalmente aberto.
Como funciona a planilha para renomear arquivos com VBA Excel
A planilha funciona de uma forma muito simples.
Imagine que você tem uma pasta aonde há arquivos que precisam ser renomeados e estes arquivos são de uma determinada extensão e estão misturados com outros nesta pasta.
O sistema permite que você realize a busca apenas dos arquivos de determinado tipo que você precisa.
E após a importação da lista de arquivos você define os novos nomes e ao pressionar um botão os arquivos todos são renomeados automaticamente.
Ao clicar no botão Ler Arquivos é a tela aonde você deve definir as extensões de arquivos que deseja que sejam listados na sua planilha.
Se quiser retornar todos os arquivos basta não preencher ou colocar *.*
Caso queira definir para que sejam retornados apenas arquivos do tipo CSV por exemplo, basta digitar *.csv, ou definir qualquer outra extensão que desejar.
Apenas os arquivos que estarão listados na planilha serão renomeados.
Definir os nomes para renomear os arquivos pelo Excel com VBA
Após listar os arquivos o sistema irá exibir os dados conforme a figura.
Na coluna Nome são retornados os nomes de todos os arquivos que foram filtrados daquela pasta.
Na extensão ele retorna as informações de cada um dos arquivos, sendo que você pode alterar inclusive a extensão dos arquivos ao renomear.
No campo Novo nome você deve colocar como gostaria que fosse renomeado, o nome do arquivo com a extensão do arquivo será montado automaticamente.
Arquivos renomeados
Os arquivos renomeados ficam conforme abaixo.
Como selecionar pastas com VBA no Excel
Acima você já tem o passo-a-passo de como utilizar a planilha.
Esta sessão é para você entender o código fonte e saber como selecionar pastas com VBA no Excel.
Para selecionar a pasta daonde serão retornados os nomes dos arquivos você deve usar o seguinte código VBA:
Sub lsCaminho(ByRef vCaminho As String) Dim lstrPasta As String With Application.FileDialog(msoFileDialogFolderPicker) 'Permitir mais de uma pasta .AllowMultiSelect = False 'Mostrar janela .Show If .SelectedItems.Count > 0 Then lstrPasta = .SelectedItems(1) End If End With 'Atribuir caminho a variável vCaminho = lstrPasta & "\" End Sub
Listar os arquivos no Excel
Para listar os arquivos no Excel foi utilizado o seguinte código VBA no Excel.
No código abaixo são retornados todos os arquivos da pasta após selecionar a pasta.
Todos os arquivos são retornados automaticamente e listados na tabela Excel.
Sub ListarArquivosExcel() Dim FName As String 'Cria um vetor de strings Dim arNames() As String Dim myCount As Integer Dim fPasta As String Dim lsExtensao As String lsExtensao = "*.*" 'Caminho do arquivo lsExtensao = InputBox("Digite o tipo de arquivo procurado, " & vbcr13 & " exemplo *.xls ou *.* para Excel ou para todos:", "Extensão do arquivo...", ActName) 'Seleciona a pasta lsCaminho fPasta 'Determina o diretório e a extensão do arquivo FName = Dir(fPasta & lsExtensao) 'Limpa a planilha Plan1.Range("A9:A1048576").Clear If [Tabela1].Rows.Count >= 2 Then [Tabela1].Rows("2:" & [Tabela1].Rows.Count).Delete End If 'Atribui o nome da pasta Plan1.Range("F1").Value = fPasta 'Enquanto FName for igual a vazio "", realiza a listagem dos arquivos Do Until FName = "" myCount = myCount + 1 'Redimensiona o vetor, preservando os dados ReDim Preserve arNames(1 To myCount) arNames(myCount) = FName 'Passa os dados para a planilha Cells(myCount + 8, 1).Value = arNames(myCount) 'Atualiza a variável FName FName = Dir Loop End Sub
Código VBA para Renomear Arquivos pelo Excel
E por fim abaixo o código para realizar a renomeação dos arquivos.
É feito um loop por todas as linhas da tabela.
Serão renomeados utilizando o procedimento Name, somente os arquivos que estejam com a coluna Novo nome preenchida.
'Procedimento que renomea os arquivos Public Sub lsRenomearArquivos() On Error Resume Next Dim lLinha As Long lLinha = 9 Do While Not IsEmpty(Range("C" & lLinha)) Name Plan1.Range("F1").Value & Plan1.Range("A" & lLinha) As Plan1.Range("F1").Value & Plan1.Range("D" & lLinha) lLinha = lLinha + 1 Loop MsgBox "Nomes dos arquivos alterados!", vbOKOnly, "Processo Concluído" End Sub
Download da planilha de renomear arquivos
Abaixo você tem o download da planilha de cálculo de valor hora no Excel. Basta colocar seu e-mail para fazer parte da nossa newsletter gratuita e o download irá iniciar automaticamente.
Baixe a planilhaCurso Excel Completo – Do Básico ao VBA
Quer aprender Excel do Básico, passando pela Avançado e chegando no VBA? Clique na imagem abaixo: