使用 C++ 生成器打开一个 Excel 文档

Open an Excel document with C++ builder

我正在尝试使用 C++ 生成器打开现有的 Excel 文档。但我有一个例外:

Project project1.exe raised exception class EOlSysError with message "incorrect type of variable"

这是我正在使用的代码:

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);

如有任何帮助,我们将不胜感激。谢谢

问题已解决:

我将 FileName 的类型从 Variant 更改为 String,并将 c_str() 添加到 Ole Function,如下所示

vXLWorkbook = vXLWorkbooks.OleFunction( "Open",vFileName.c_str());