Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Autres Renommage avec sufixe et préfixe

Mano**

XLDnaute Nouveau
J’ai 17k fichiers à renommer qui sont dans un répertoire et je dois ajouter un préfixe et un sufixe. Le répertoire est X/secur3/Renommage. Le nom actuel est composé de 6 chiffres qui sont différent pour chaque fichiers. Je veux ajouter un préfixe O19- et un sufixe -99 qui seront toujours les meme. Fichier avant: 123456 Et ce que je veux en finale est : O19-123456-99. J’ai aucune expérience j’ai beau lire mais je suis incapable de faire la formule. Merci de votre aide
 

ChTi160

XLDnaute Barbatruc
Bonjour Mano**
à voir ce que j'ai bidouillé en recherchant sur le Net
Boucler sur les fichiers d'un répertoire
ou renommer Fichiers etc etc
VB:
Sub BoucleSurFichiers()
    Dim Chemin As String, Fichier As String
 Dim StrExt$
    'Définit le répertoire contenant les fichiers
    Chemin = ThisWorkbook.Path & "\" 
    'Boucle sur tous les fichiers xls du répertoire.
    Fichier = Dir(Chemin & "*.xls*")
    'Utilisez la syntaxe suivante pour boucler sur tous les types de fichiers :
'    Fichier = Dir(Chemin & "*.*") 
    Do While Len(Fichier) > 0
      StrExt = Right(Fichier, Len(Fichier) - InStrRev(Fichier, ".") + 1)
      If Fichier Like "######" & StrExt Then
        'écrit le résultat dans la fenêtre d'exécution (Ctrl+G).
'        Debug.Print Chemin & Fichier
       Name Chemin & Fichier As Chemin & "O19-" & Mid(Fichier, 1, InStr(1, Fichier, ".") - 1) & "-99" & StrExt
      End If
        Fichier = Dir()
    Loop
End Sub
il y a d'autres moyens de faire comme pour la récupération du Nom du Fichier , de l'extension Lol etc etc
testé sur un fichier !
jean marie
 
Dernière édition:

Robert

XLDnaute Barbatruc
Repose en paix
Bonjour Mano, bonjour le forum,

Peut-être comme ça :

VB:
Sub Macro1()
Dim D As String 'déclare la variable D (Dossier)
Dim F As String 'déclare la variable F (Fichier)
Dim N As String 'déclare la variable N (Nom)
Dim E As String 'déclare la variable E (Extension)
Dim NN As String 'déclare la variable NN (Nouveau Nom)

D = "X\secur3\Renommage\" 'définit le dossier D
F = Dir(D & "*.xls*") 'définit le premeir fichier excel du dossier D
Do While F <> "" 'agit tant que F n'est pas vide (tant qu'il existe des fichiers F)
    N = Split(F, ".")(0) 'récupère le nom N (sans l'extension)
    E = Split(F, ".")(1) 'récupère l'extension E
    NN = "O19-" & N & "-99." & E 'définit le nouveau non NN
    If Left(N, 3) <> "O19" Then Name D & F As D & NN 'si F ne commence pas pas "O19", renomme F
    F = Dir 'définit le fichier suivant du dossier D
Loop 'boucle
End Sub
 

ChTi160

XLDnaute Barbatruc
Bonjour Robert
meilleurs vœux à toi et tes proches
Après test de ta procédure il y a une contrainte dont tu n'as pas tenu compte le format des Fichiers à traités qui sont au Format 6 chiffres Ex 098765
merci
jean marie
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…