首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

用VC++操作EXCEL可是小弟我不知道如何保存

2013-11-23 
用VC++操作EXCEL可是我不知道怎么保存?这是我的Workbook类的SaveAs函数原型:void _Workbook::SaveAs(const

用VC++操作EXCEL可是我不知道怎么保存?
这是我的Workbook类的SaveAs函数原型:void _Workbook::SaveAs(const VARIANT& Filename, const VARIANT& FileFormat, const VARIANT& Password, const VARIANT& WriteResPassword, const VARIANT& ReadOnlyRecommended, const VARIANT& CreateBackup, long AccessMode, const VARIANT& ConflictResolution, 
const VARIANT& AddToMru, const VARIANT& TextCodepage, const VARIANT& TextVisualLayout, const VARIANT& Local)
{
static BYTE parms[] =
VTS_VARIANT VTS_VARIANT VTS_VARIANT VTS_VARIANT VTS_VARIANT VTS_VARIANT VTS_I4 VTS_VARIANT VTS_VARIANT VTS_VARIANT VTS_VARIANT VTS_VARIANT;
InvokeHelper(0x785, DISPATCH_METHOD, VT_EMPTY, NULL, parms,
 &Filename, &FileFormat, &Password, &WriteResPassword, &ReadOnlyRecommended, &CreateBackup, AccessMode, &ConflictResolution, &AddToMru, &TextCodepage, &TextVisualLayout, &Local);
}
这是我自己给这个参数的赋值:book.SaveAs(COleVariant("C:\\a.xls"),VTS_VARIANT,VTS_VARIANT,VTS_VARIANT,VTS_VARIANT,VTS_VARIANT,(long)0,VTS_VARIANT,VTS_VARIANT,VTS_VARIANT,VTS_VARIANT,VTS_VARIANT);
这是编译时的错误提示:error C2664: 'SaveAs' : cannot convert parameter 2 from 'char [2]' to 'const struct tagVARIANT &'
        Reason: cannot convert from 'char [2]' to 'const struct tagVARIANT'请高手指点,怎么给SaveAs方法赋值? excel vc++ c 类
[解决办法]
Excel::XlFileFormat vFileFormat;
vFileFormat = xlWorkbookNormal;
book.SaveAs(COleVariant("C:\\a.xls"),_variant_t(vFileFormat),VTS_VARIANT,VTS_VARIANT,VTS_VARIANT,VTS_VARIANT,(long)0,VTS_VARIANT,VTS_VARIANT,VTS_VARIANT,VTS_VARIANT,VTS_VARIANT);
[解决办法]
用Saveas的话每次都会出现是否覆盖的对话框,如果不想要这个对话框,你可以用
book.SaveCopyAs(COleVariant(strTempFile));

热点排行