Без:
с использованием COM, с чистый C++, шаги, предпринятые до сих пор:
//steps above omitted
_ApplicationPtr application(__uuidof(Excel::Application));
//omitted
const BSTR wcharFileName = SysAllocString(L"...");
application->Workbooks->Open(wcharFileName);
application->put_Visible(10, true);
Вопрос:





Попробуй это http://support.microsoft.com/kb/216388/en-us
Я ранее опубликовал это
«Для Excel - COM с использованием C++
http://shaktisaran.tech.officelive.com/ExcelCOM.aspx
В нем также есть учебные пособия по программированию для Windows ".
Я удалил этот пост, потому что это не помогло.
Я предоставляю дополнительную информацию, связанную с примером на веб-сайте,
В ExcelProcessor.cpp
Функция ReadRange считывает диапазон ячеек Excel, но вам нужно прочитать ячейку данных.
Функция ShowAddedCells записывает в ячейку Excel, которую вы можете использовать, как показано ниже.
В функции ShowAddedCells,
//Comment the following
/*
DISPID dispidPUT = DISPID_PROPERTYPUT;
DISPPARAMS dparams = {vDblVal, &dispidPUT, 1, 1};
EXCEPINFO excepinfo;
hr = pXlCell->Invoke(dispID,
IID_NULL,
LOCALE_SYSTEM_DEFAULT,
DISPATCH_PROPERTYPUT,
&dparams,
NULL,
&excepinfo,
NULL);
*/
//Add the following
DISPPARAMS dparams = {NULL, NULL, 0, 0};
EXCEPINFO excepinfo;
VARIANT vResult;
VariantInit(&vResult);
hr = pXlCell->Invoke(dispID,
IID_NULL,
LOCALE_SYSTEM_DEFAULT,
DISPATCH_PROPERTYGET,
&dparams,
&vResult,
&excepinfo,
NULL);
//You get the cell value in vResult
Итак, вы создаете функцию ReadCell, например функцию ShowAddedCells.
ЧЕЛОВЕК! Большое спасибо! Хотел бы я проголосовать дважды - надеюсь, этот вопрос поможет другим :)