Откройте документ Excel с помощью C++ builder
Я пытаюсь открыть существующий документ Excel, используя C++ Builder. но у меня есть исключение:
Project project1.exe поднял класс исключения EOlSysError с сообщением "неверный тип переменной"
Вот код, который я использую:
try {
vMSExcel = Variant::GetActiveObject("Excel.Application");
}
catch (...) {
vMSExcel = Variant::CreateObject("Excel.Application");
}
vMSExcel.OlePropertySet("Visible", true);
Variant vFileName = "C:\\Users\mi\\Desktop\\classeur1.xls";
vXLWorkbooks = vMSExcel.OlePropertyGet("Workbooks");
vXLWorkbook = vXLWorkbooks.OleFunction("Open", vFileName);
Исключение выдается в этой строке:
vXLWorkbook = vXLWorkbooks.OleFunction("Open", vFileName);
Любая помощь будет оценена. Спасибо
1 ответ
Решение
ИСПРАВЛЕНО ПРОБЛЕМА:
Я изменил тип vFileName с Vaiant на String и добавил c_str() к OleFucntion следующим образом
vXLWorkbook = vXLWorkbooks.OleFunction( "Open",vFileName.c_str());