mfc把list control的数据导入到excel

本文介绍了如何在Visual Studio 2015环境下,使用MFC将List Control中的数据导出到Excel。首先通过添加MFC类与Excel接口关联,然后在主函数中实现数据导出。在实现过程中遇到COM初始化失败的问题,原因是Access和Excel版本冲突。为解决此问题,采用另存为CSV或TXT的方式避免冲突,但这种方式无法设置列宽。
摘要由CSDN通过智能技术生成

环境:Vs2015    office 2013

1. 找到类视图,右击类名,添加 - > 类 - > MFC - > TypeLib 中的 MFC 类 - > 添加

2. 然后出现

3. 在下拉列表框选择 excel  在接口栏找到对应的类,分别添加 

4. 这6个类,然后生成的6个类的头文件的这句话都注释掉

#import "C:\\Program Files (x86)\\Microsoft Office\\OFFICE12\\EXCEL.EXE" no_namespace

5. 然后编译,此时会编译失败,那我们双击错误信息,找到dialogbox 注释掉就好了。

VARIANT DialogBox()
{
	VARIANT result;
	InvokeHelper(0xf5, DISPATCH_METHOD, VT_VARIANT, (void*)&result, NULL);
	return result;
}

6. 主函数添加如下:

void ClistToExcelDlg::OnBnClickedButton1()
{
	// TODO: 在此添加控件通知处理程序代码

	CFileDialog FileDialog(FALSE, L"xls", NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, _T("Microsoft Excel 2013(*.xls)|*.xls|所有文件(*.*)"), this);
	if (FileDialog.DoModal() != IDOK)
	{
		return;
	}
	CString cStrFile = FileDialog.GetPathName();  //选择保存路径名称

	if (::PathFileExists(cStrFile))
		DeleteFile(cStrFile);

	//CString cStrFile = _T("E:\\myexcel.xls");
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值