Bonjour

J’ai une macro qui copie une feuille d’un fichier .xlsm vers un nouveau fichier sauvegardé en .xlsx.

Voici le code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
        Dim ReportWB As Workbook
        Set ReportWB = Application.Workbooks.Add
        ReportWB.SaveAs Filename:=”C:\Users\Test.xlsx”, FileFormat:=51
 
        'Suppression des onglets inutiles
        While ReportWB.Sheets.Count > 1
            ReportWB.Sheets(1).Delete
        Wend
 
        ThisWorkbook.Sheets("SheetToCopy").Copy After:=ReportWB.Sheets(1)
Or, ce code produit une erreur car même si ReportWB est sauvé au format .xlsx, il a été créé intialement au format .xls donc ne possède pas le même nombre de colonnes, il ne peut pas accueillir la feuille « SheetsToCopy ».

Comment faire que lors de la méthode Workbooks.Add, le classeur soit déjà en .xlsx ?

Merci d’avance.