Autres Sans supprimer les classeurs : est-il possible de les renommer en supprimant les " - copie" en fin du noms de mes classeurs ?

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous (lol ça faisait longtemps) 🤪

J'en ai une petite en cette fin d'après-midi.

Dans un dossier, j'ai un nombre important de classeurs qui ont en fin de noms " - copie"
Est-il possible de les supprimer ?
excel copie.jpg

Auriez-vous la solution ?
En cas, je joins une photo.

Merci à toutes et à tous,
lionel 🤪
 
Dernière édition:
Bonsoir @Usine à gaz @TooFatBoy


VB:
Sub RenommerCopiesExcel()
    Dim chemin As String
    Dim fichier As String
    Dim nouveauNom As String
 
    ' <-- Modifiez ici le chemin de votre dossier
    chemin = "C:\Votre\Dossier\"
 
    ' Cherche tous les fichiers "*.*      '  Cherche tous les fichiers Excel
    fichier = Dir(chemin & "*.*")         '  fichier = Dir(chemin & "*.xls*") inclut .xls, .xlsx, .xlsm
 
    Do While fichier <> ""
        ' Vérifie si le nom contient " - copie"
        If InStr(fichier, " - copie") > 0 Then
            ' Crée le nouveau nom en enlevant " - copie"
            nouveauNom = Replace(fichier, " - copie", "")
            ' Renomme le fichier
            Name chemin & fichier As chemin & nouveauNom
        End If
    
        ' Passe au fichier suivant
        fichier = Dir
    Loop
 
    MsgBox "Renommage terminé."
End Sub
 
Bonjour à toutes et à tous (lol ça faisait longtemps) 🤪

J'en ai une petite en cette fin d'après-midi.

Dans un dossier, j'ai un nombre important de classeurs qui ont en fin de noms " - copie"
Est-il possible de les supprimer ?
Regarde la pièce jointe 1222133
Auriez-vous la solution ?
En cas, je joins une photo.

Merci à toutes et à tous,
lionel 🤪
Bonjour à tous
S'il s'agit de supprimer les fichiers....
VB:
Sub supprime()
    Dim Fichier As String, chemin As String
    chemin = "C:\Users\xxx\yyyy\"    ' a adapter
    If MsgBox("Attention, aucun retour possible" & vbLf & "Confirmer", 292, "Attention") = 7 Then Exit Sub
    Fichier = Dir(chemin)
    Do While Fichier <> ""
          If InStr(Fichier, "- copie") Then
            Kill chemin & Fichier
        End If
        Fichier = Dir
    Loop
End Sub
 
Dernière édition:
Bonsoir @Usine à gaz @TooFatBoy


VB:
Sub RenommerCopiesExcel()
    Dim chemin As String
    Dim fichier As String
    Dim nouveauNom As String
 
    ' <-- Modifiez ici le chemin de votre dossier
    chemin = "C:\Votre\Dossier\"
 
    ' Cherche tous les fichiers "*.*      '  Cherche tous les fichiers Excel
    fichier = Dir(chemin & "*.*")         '  fichier = Dir(chemin & "*.xls*") inclut .xls, .xlsx, .xlsm
 
    Do While fichier <> ""
        ' Vérifie si le nom contient " - copie"
        If InStr(fichier, " - copie") > 0 Then
            ' Crée le nouveau nom en enlevant " - copie"
            nouveauNom = Replace(fichier, " - copie", "")
            ' Renomme le fichier
            Name chemin & fichier As chemin & nouveauNom
        End If
   
        ' Passe au fichier suivant
        fichier = Dir
    Loop
 
    MsgBox "Renommage terminé."
End Sub
Bonsoir Laurent,
Merci pour ce retour.
Je vais tenter et je te dirai.
lionel,
 
Bonjour à tous
S'il s'agit de supprimer les fichiers....
VB:
Sub supprime()
    Dim Fichier As String, chemin As String
    chemin = "C:\Users\xxx\yyyy\"    ' a adapter
    If MsgBox("Attention, aucun retour possible" & vbLf & "Confirmer", 292, "Attention") = 7 Then Exit Sub
    Do While Fichier <> ""
        Fichier = Dir(chemin)
        If InStr(Fichier, "- copie") Then
            Kill chemin & Fichier
        End If
        Fichier = Dir
    Loop
End Sub
Bonsoir Jacky67,
Merci pour ce retour.
Il ne s'agit pas de les supprimer mais de les renommer.
lionel,
 
Bonjour le fil

[Pour infos]
Lionel
tu avais déjà eu le problème jadis
les solutions de l'époque doivent toujours fonctionner

(dont la mienne avec Power Shell 😉 )
 
Bonjour le fil

[Pour infos]
Lionel
tu avais déjà eu le problème jadis
les solutions de l'époque doivent toujours fonctionner

(dont la mienne avec Power Shell 😉 )
Bonjour JM,
Content de te lire à nouveau.

Mais il ne s'agit pas de supprimer mais de renommer les classeurs,
lionel
 
Re

@Usine à gaz
Usine à gaz à dit:
Dans un dossier, j'ai un nombre important de classeurs qui ont en fin de noms " - copie"
Est-il possible de les supprimer ?
Ton premier message pouvait prêter à confusion.
Au moins que ce soit pour supprimer ou renommer, tu auras désormais moult solutions 😉
Mais si dans ton dossier, tu as les originaux, Windows bronchera normalement.
Exemple: si tu as test.xlsx et test_copie.xlsx et que tu veuilles renommer test_copie.xlsx en test.xslx, normalement Windows affichera
un message de ce type
Lionel.PNG
 
Re

@Usine à gaz

Ton premier message pouvait prêter à confusion.
Au moins que ce soit pour supprimer ou renommer, tu auras désormais moult solutions 😉
Mais si dans ton dossier, tu as les originaux, Windows bronchera normalement.
Exemple: si tu as test.xlsx et test_copie.xlsx et que tu veuilles renommer test_copie.xlsx en test.xslx, normalement Windows affichera
un message de ce type
Regarde la pièce jointe 1222138
Re JM 😉
Tu as raison, je vais renommer le fil.
Et merci pour tes explications et conseils.
Bonne fin de journée,
lionel,
 
Bonsoir Lionel, le fil,

Normalement quand on crée la copie d'un fichier le nom est suivi de " - Copie" avec une majuscule.

Et il peut y avoir plusieurs copies successives donc :
VB:
Sub Epurer_Noms_Fichiers()
Dim chemin$, fso As Object, f As Object, nom$
With Application.FileDialog(msoFileDialogFolderPicker)
    .Title = "Sélectionnez un dossier"
    If .Show = False Then End
    chemin = .SelectedItems(1) & "\"
End With
Set fso = CreateObject("Scripting.FileSystemObject")
On Error Resume Next
For Each f In fso.getFolder(chemin).Files
    nom = f.Name
    Name chemin & nom As chemin & Replace(Replace(nom, " - copie", ""), " - Copie", "")
Next
MsgBox "Epurage terminé"
End Sub
A+
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour