Bonjour
Je tente de transformer un fichier .xls en un fichier .csv. Pour cela j'ouvre Excel et demande à enregistrer le fichier en csv
Voici mon code :
Mais je n'arrive pas à tester cette fonction car j'ai l'erreur suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 Variant vMSExcel; Variant vWorksheet, vSheetName; Variant vXLWorkbooks, vXLWorkbook, vReadOnly, vLink; void __fastcall TForm1::CreerCSV() { AnsiString Path = ExtractFileDir(ParamStr(0)); AnsiString FileName = Path +"\\~Courbes.xls"; vMSExcel = Variant::GetActiveObject("Excel.Application"); vMSExcel.OlePropertySet("Visible", false); //Ouvre Excel en lecture seul vLink = Unassigned; vReadOnly = true; vXLWorkbooks = vMSExcel.OlePropertyGet("Workbooks"); vXLWorkbook = vXLWorkbooks.OleFunction("Open", FileName.c_str(), vLink, vReadOnly); //Placer dans la fiche Liste vSheetName = "LISTE"; vWorksheet = vXLWorkbook.OlePropertyGet("Worksheets",vSheetName); //Enregistrer au format CSV vXLWorkbook.OleProcedure("Saveas", Path+"\\~Courbes.csv"); //Ferme Excel vMSExcel.OleFunction("Quit"); vMSExcel = Unassigned; }
[C++ Erreur] sysvari.h(1877): E2015 Ambiguïté entre 'TVariantT<tagVARIANT>::operator =(const TVariantT<tagVARIANT> &)' et 'TVariantT<tagVARIANT>::operator =(bool)'.
Auriez vous une idée pour supprimer cette erreur?
Est ce que le principe d'obtention du fichier csv est bon?
merci de votre aide
Partager