Como renomear todos os arquivos de imagem em uma pasta de acordo com uma lista de células no Excel?
Você já precisou renomear várias imagens em uma pasta com base em uma lista de nomes em uma planilha do Excel? Renomeá-las uma por uma pode ser demorado, mas com a ajuda de códigos VBA, você pode automatizar rapidamente o processo.
Renomear todos os arquivos de imagem em uma pasta
Renomear todos os arquivos de imagem em uma pasta
Para renomear todos os arquivos de imagem em uma pasta específica, siga estas etapas:
Passo 1: Importe os nomes de arquivo originais da pasta para uma planilha no Excel
1. Pressione as teclas "Alt + F11" para habilitar a janela "Microsoft Visual Basic for Applications".
2. Clique em "Inserir" > "Módulo" e cole o código abaixo no script.
VBA: Recuperar Nomes de Imagens de uma Pasta
Sub PictureNametoExcel()
'UpdatebyExtendoffice201709027
Dim I As Long
Dim xRg As Range
Dim xAddress As String
Dim xFileName As String
Dim xFileDlg As FileDialog
Dim xFileDlgItem As Variant
On Error Resume Next
xAddress = ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Select a cell to place name list:", "KuTools For Excel", xAddress, , , , , 8)
If xRg Is Nothing Then Exit Sub
Application.ScreenUpdating = False
Set xRg = xRg(1)
xRg.Value = "Picture Name"
With xRg.Font
.Name = "Arial"
.FontStyle = "Bold"
.Size = 10
End With
xRg.EntireColumn.AutoFit
Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
I = 1
If xFileDlg.Show = -1 Then
xFileDlgItem = xFileDlg.SelectedItems.Item(1)
xFileName = Dir(xFileDlgItem & "\")
Do While xFileName <> ""
If InStr(1, xFileName, ".jpg") + InStr(1, xFileName, ".png") + InStr(1, xFileName, ".img") + InStr(1, xFileName, ".gif") + InStr(1, xFileName, ".ioc") + InStr(1, xFileName, ".bmp") > 0 Then
xRg.Offset(I).Value = xFileDlgItem & "\" & xFileName
I = I + 1
End If
xFileName = Dir
Loop
End If
Application.ScreenUpdating = True
End Sub
3. Pressione a tecla "F5" para executar o código, e uma caixa de diálogo aparecerá para lembrá-lo de selecionar uma célula para saída da lista de nomes. Veja a captura de tela:
4. Clique em "OK" e selecione a pasta específica cujos nomes de imagens você precisa listar na planilha atual. Veja a captura de tela:
5. Clique em "OK". Os nomes das imagens foram listados na planilha ativa.
Passo 2: Renomeie os Arquivos de Imagem Com Base em uma Nova Lista de Nomes
1. Pressione as teclas "Alt + F11" para habilitar a janela "Microsoft Visual Basic for Applications".
2. Clique em "Inserir" > "Módulo" e cole o código abaixo no script.
VBA: Renomear Arquivos de Imagem em uma Pasta
Sub RenameFile()
'UpdatebyExtendoffice20170927
Dim I As Long
Dim xLastRow As Long
Dim xAddress As String
Dim xRgS, xRgD As Range
Dim xNumLeft, xNumRight As Long
Dim xOldName, xNewName As String
On Error Resume Next
xAddress = ActiveWindow.RangeSelection.Address
Set xRgS = Application.InputBox("Select Original Names(Single Column):", "KuTools For Excel", xAddress, , , , , 8)
If xRgS Is Nothing Then Exit Sub
Set xRgD = Application.InputBox("Select New Names(Single Column):", "KuTools For Excel", , , , , , 8)
If xRgD Is Nothing Then Exit Sub
Application.ScreenUpdating = False
xLastRow = xRgS.Rows.Count
Set xRgS = xRgS(1)
Set xRgD = xRgD(1)
For I = 1 To xLastRow
xOldName = xRgS.Offset(I - 1).Value
xNumLeft = InStrRev(xOldName, "\")
xNumRight = InStrRev(xOldName, ".")
xNewName = xRgD.Offset(I - 1).Value
If xNewName <> "" Then
xNewName = Left(xOldName, xNumLeft) & xNewName & Mid(xOldName, xNumRight)
Name xOldName As xNewName
End If
Next
MsgBox "Congratulations! You have successfully renamed all the files", vbInformation, "KuTools For Excel"
Application.ScreenUpdating = True
End Sub
3. Pressione a tecla "F5" para executar o código, e uma caixa de diálogo aparecerá para lembrá-lo de selecionar os nomes de imagem originais que deseja substituir. Veja a captura de tela:
4. Clique em "OK", e selecione os novos nomes que deseja usar para substituir os nomes das imagens na segunda caixa de diálogo. Veja a captura de tela:
5. Clique em "OK", uma caixa de diálogo aparece para informar que os nomes das imagens foram substituídos com sucesso.
6. Clique em "OK", e os nomes das imagens na pasta serão substituídos pelos novos nomes das células na planilha.
![]() |
![]() |
![]() |
Artigos Relacionados:
Melhores Ferramentas de Produtividade para Office
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!