Accéder au contenu principal

Comment renommer tous les fichiers d'image dans un dossier en fonction d'une liste de cellules dans Excel ?

Author: Sun Last Modified: 2025-08-06

Avez-vous déjà eu besoin de renommer plusieurs images dans un dossier en fonction d'une liste de noms dans une feuille Excel ? Les renommer un par un peut être chronophage, mais avec l'aide de codes VBA, vous pouvez automatiser rapidement le processus.

Renommer tous les fichiers d'image dans un dossier


Renommer tous les fichiers d'image dans un dossier

Pour renommer tous les fichiers d'image dans un dossier spécifié, suivez ces étapes :

Étape 1 : Importer les noms de fichiers originaux depuis le dossier vers une feuille dans Excel

1. Appuyez sur les touches "Alt + F11" pour activer la fenêtre "Microsoft Visual Basic for Applications".

2. Cliquez sur "Insérer" > "Module" et collez le code ci-dessous dans le script.

VBA : Récupérer les noms des images depuis un dossier

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. Appuyez sur la touche "F5" pour exécuter le code, et une boîte de dialogue apparaît pour vous rappeler de sélectionner une cellule où afficher la liste des noms. Voir capture d'écran :
A screenshot of the dialog to select a cell for outputting the image name list in Excel

4. Cliquez sur "OK" et sélectionnez le dossier spécifié dont vous devez lister les noms d'images dans la feuille de calcul actuelle. Voir capture d'écran :
A screenshot showing the folder selection dialog for listing image names in Excel

5. Cliquez sur "OK". Les noms des images ont été listés sur la feuille active.

Étape 2 : Renommer les fichiers d'image en fonction d'une nouvelle liste de noms

1. Appuyez sur les touches "Alt + F11" pour activer la fenêtre "Microsoft Visual Basic for Applications".

2. Cliquez sur "Insérer" > "Module" et collez le code ci-dessous dans le script.

VBA : Renommer les fichiers d'image dans un dossier

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. Appuyez sur la touche "F5" pour exécuter le code, et une boîte de dialogue apparaît pour vous rappeler de sélectionner les noms d'images originaux que vous souhaitez remplacer. Voir capture d'écran :
A screenshot of the dialog to select original picture names in Excel for renaming

4. Cliquez sur "OK", puis sélectionnez les nouveaux noms que vous souhaitez utiliser pour remplacer les noms d'images dans la deuxième boîte de dialogue. Voir capture d'écran :
A screenshot showing the dialog to select new names for replacing picture names in Excel.

5. Cliquez sur "OK", une boîte de dialogue apparaît pour vous informer que les noms des images ont été remplacés avec succès.
A screenshot of the success message after renaming pictures in Excel

6. Cliquez sur "OK", et les noms des images dans le dossier seront remplacés par les nouveaux noms provenant des cellules de la feuille.

A screenshot showing the original picture names before renaming in the folder
Arrow down
A screenshot showing the renamed picture names in the folder

Articles connexes :

Meilleurs outils de productivité Office

🤖 Kutools AI Aide : Révolutionnez l'analyse de données grâce à : Exécution intelligente   |  Générer du code  |  Créer des Formules personnalisées  |  Analyser des données et générer des graphiques  |  Appeler les Fonctions améliorées
Fonctionnalités populaires : Trouver, mettre en évidence ou marquer les doublons   |  Supprimer les lignes vides   |  Combiner les colonnes ou cellules sans perdre de données   |  Arrondir...
Super RECHERCHEV : Recherche multi-critères    Recherche multi-valeurs  |   Recherche multi-feuilles   |   Correspondance floue ....
Liste déroulante avancée : Créer rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante avec sélection multiple ....
Gestionnaire de colonnes : Ajouter un nombre spécifique de colonnes  |  Déplacer des colonnes  |  Basculer l’état de visibilité des colonnes masquées  |  Comparer les plages & colonnes ...
Fonctionnalités à la une : Mise au point de la grille   |  Affichage de conception   |   Barre de formule améliorée    Gestionnaire de classeur & de feuille de calcul   |  Bibliothèque dAutoTexte (Auto Text)   |  Sélecteur de date   |  Fusionner les données   |  Chiffrer/Déchiffrer les cellules    Envoyer un e-mail par liste   |  Super Filtre   |   Filtre spécial (filtrer les cellules avec une police en gras/italique/barré...) ...
Top15 des ensembles d’outils12 outils de texte (Ajouter du texte, Supprimer des caractères spécifiques, ...)   |   Plus de50 types de graphiques (Diagramme de Gantt, ...)   |   Plus de40 formules intelligentes (Calculer lâge en fonction de la date de naissance, ...)   |   19 outils dinsertion (Insérer un code QR, Insérer une image depuis le chemin, ...)   |  12 outils de conversion (Convertir en mots, Conversion de devises, ...)   |  7 outils de fusion & division (Fusion avancée des lignes, Diviser les cellules, ...)   |   ... et bien plus encore
Utilisez Kutools dans votre langue préférée: compatible avec l’anglais, l’espagnol, l’allemand, le français, le chinois et plus de40 autres langues !

Dynamisez vos compétences Excel avec Kutools pour Excel et découvrez une efficacité inégalée. Kutools pour Excel propose plus de300 fonctionnalités avancées pour booster votre productivité et gagner du temps.  Cliquez ici pour obtenir la fonctionnalité la plus essentielle pour vous...


Office Tab apporte une interface à onglets à Office, et facilite grandement votre travail

  • Activez la modification et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, au lieu d’ouvrir de nouvelles fenêtres.
  • Augmentez votre productivité de50% et réduisez des centaines de clics de souris chaque jour!