Wie benenne ich alle Bildnamen in einem Ordner gemäß einer Liste von Zellen in Excel um?
Haben Sie jemals versucht, Bilder anhand einer Liste von Zellen im Blatt umzubenennen? Wenn ja, haben Sie irgendwelche Tricks, um den Job schnell zu erledigen, ohne sie einzeln umzubenennen? In diesem Artikel stelle ich zwei VBA-Codes vor, um diesen Job in Excel schnell zu erledigen.
Benennen Sie alle Bildnamen in einem Ordner um
Benennen Sie alle Bildnamen in einem Ordner um
Um alle Bildnamen in einem angegebenen Ordner umzubenennen, müssen Sie zuerst die ursprünglichen Namen im Blatt auflisten.
1. Drücken Sie Alt + F11 Tasten zum Aktivieren der Microsoft Visual Basic für Applikationen Fenster.
2 Klicken Insert > Modul und fügen Sie den folgenden Code in das Skript ein.
VBA: Bildnamen eines Ordners abrufen
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. Drücken Sie F5 Wenn Sie die Taste drücken, um den Code auszuführen, wird ein Dialogfeld angezeigt, in dem Sie daran erinnert werden, eine Zelle für die Ausgabe der Namensliste auszuwählen. Siehe Screenshot:
4 Klicken OK und um den angegebenen Ordner auszuwählen, dessen Bildnamen Sie im aktuellen Arbeitsblatt auflisten müssen. Siehe Screenshot:
5 Klicken OK. Die Bildnamen wurden auf dem aktiven Blatt aufgelistet.
Dann können Sie die Bilder umbenennen.
1. Drücken Sie Alt + F11 Tasten zum Aktivieren der Microsoft Visual Basic für Applikationen Fenster.
2 Klicken Insert > Modul und fügen Sie den folgenden Code in das Skript ein.
VBA: Bilder umbenennen
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. Drücken Sie F5 Wenn Sie die Taste drücken, um den Code auszuführen, wird ein Dialogfeld angezeigt, in dem Sie daran erinnert werden, die ursprünglichen Bildnamen auszuwählen, die Sie ersetzen möchten. Siehe Screenshot:
4 Klicken OKund wählen Sie im zweiten Dialogfeld die neuen Namen aus, die Sie ersetzen möchten. Siehe Screenshot:
5 Klicken OKEs erscheint ein Dialogfeld, das Sie daran erinnert, dass die Bildnamen erfolgreich ersetzt wurden.
6. Klicken Sie auf OK, und die Bildnamen wurden durch die Zellen im Blatt ersetzt.
Relative Artikel:
Beste Office-Produktivitätstools
Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über 300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen ...
Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich
- Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
- Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!