Bonjour,
Voici une première boucle pour convertir des .xlr en .xlsx.
Pour l'instant, le chemin source et le chemin cible sont "hard" codés. Il faudra adapter ... n'oublie pas le \ à la fin des noms.
Pour avancer, je vais avoir besoin de renseignements sur la structure les dossiers (et sous-dossiers) à traiter ... ainsi, que la destination désirée (chemin cible).
En gros combien de fichiers .xlr sont à traiter ... En moyenne, combien y a-t-il de fichiers .xlr dans un dossier ? Et combien environ de sous-sous-sous-sous-sous-dossiers ?
Car, quand la somme des chemins donne un nombre de caractères trop important ... les difficultés commencent. On peut gérer ... mais il faut savoir à quoi s'attendre.
Private Sub CommandButton1_Click()
Dim Fichier As String
Dim ChemSource As String
Dim ChemDest As String
Dim Wb As Workbook
Dim LeNom As String
Application.ScreenUpdating = False
ChemSource = "C:\Documents\LesExcels\Conversion\Test\"
ChemDest = "C:\Documents\LesExcels\Conversion\Test\Modif\"
Fichier = Dir(ChemSource & "*.xlr")
Do While Fichier <> ""
Set Wb = Workbooks.Open(ChemSource & Fichier)
LeNom = Left(Wb.Name, Len(Wb.Name) - 4)
LeNom = LeNom & ".xlsx"
Wb.SaveAs Filename:=ChemDest & LeNom, FileFormat:=xlOpenXMLWorkbook, Password:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
Wb.Close SaveChanges:=True
Set Wb = Nothing
Fichier = Dir
Loop
End Sub
ric