Renommer un fichier dont on ne connait pas le nom exact

Renommer un fichier dont on ne connait pas le nom exact - VB/VBA/VBS - Programmation

Marsh Posté le 24-03-2005 à 10:10:51    

Bonjour !
 
Je désire renommer un fichier dont je ne connais pas le nom exact.
Je voudrais utiliser la première partie du nom uniquement, car je voudrais qu'il me renomme la globalité des fichiers commençant par un certain préfixe.
 
Sauriez-vous comment faire ? Merci d'avance ...
 

Reply

Marsh Posté le 24-03-2005 à 10:10:51   

Reply

Marsh Posté le 24-03-2005 à 18:32:22    

J'ai rien compris, si tu pouvais exposer ton problème plus en détail, ça serait sympa ;)

Reply

Marsh Posté le 24-03-2005 à 18:50:29    

Utilise le logiciel ant renamer, il fait exactement ce que tu demandes:
http://www.antp.be/software/renamer


---------------
"I wonder if the internal negative pressure in self pumping toothpaste tubes is adjusted for different market altitudes." John Carmack
Reply

Marsh Posté le 24-03-2005 à 18:56:09    

et il le fait bien [:bien]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 24-03-2005 à 21:41:23    

Merci, mais j'aimerai le faire depuis VBA.
Je m'explique si jamais vs m'aviez pas trop compris : je vais créer au fils du temps plusieurs fichiers utilisant le même préfixe disons "test" mais la suite du fichier prendra l'année en cours et peut-être le mois.
Alors je vais pas m'amuser à coder en dure dans le code, chaque nom de fichier possible ... alors je me demandais s'il était possible à l'aide d'une commande VBA de faire un truc du style : rename test*.xls...

Reply

Marsh Posté le 25-03-2005 à 00:40:24    

Voilà de quoi t'inspirer.
Ca ne fait pas exactement ce que tu veux mais, si tu cherches un peu, tu devrais t'en sortir.
 

Public Sub Rename()
 
  Dim sFullName
  Dim sName As String
  Dim sNewName As String
  Dim sPath As String
  Dim vI As Variant
 
  Sheets("Liste" ).Activate
  Cells.Clear
  sPath = "C:\Mes documents\Excel\ALAIN\"  ' Définit le chemin d'accès.
  ' Extrait la première entrée.
  sName = Dir(sPath)
  Do While Not sName = "" ' Commence la boucle.
    If Right$(sName, 4) = ".xls" Then
      If UCase(Left$(sName, 4)) = "TEST" Then
        sFullName = sPath & sName
        sNewName = sPath & "bk" & sName
        Name sFullName As sNewName
      End If
    End If
    sName = Dir  ' Extrait l'entrée suivante.
  Loop
End Sub


Message édité par AlainTech le 25-03-2005 à 00:41:07

---------------
Si on vous donne une info qui marche, DITES-LE!!!! ------ Si vous trouvez seul, AUSSI, votre solution peut servir à d'autres! ------ Je dois la majorité de mes connaissances à mes erreurs!
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed