
第一:清杀宏病毒;(这种可能最大!)
第二:另存为2003版本后再导出;
第三:win8匹配的是office2010以上版本。office版本要与系统一致,32位配32位,6位配64位。
不好意思 今天才看到
导入EXCEL出错有很多方面的原因 我先说几个常见的
最常见的就是DCOM组件里面的配置 这个你应该知道吧 如果不知道再问我 我给你详细说
还有就是C盘的写入删除权限 当然可以不把要导出导入的EXCEL文件放在C盘 其他盘符都可以
还有一点就是C盘里面的(桌面/Desktop)这个文件夹 你查查看有没有 如果没有 请加上 暂时我记得就这么多
最后 64位和32位的系统 DCOM配置也是不一样的 这点希望你注意一下就好
如果还有什么问题 可以直接HI我
1有些导出是用了EXCEL的库文件,而不同电脑可能安装了不同版本的WORD,因为高低版本等原因引起的兼容性问题,可能会在另一台电脑上不能正常导出
排查:查看两台电脑的WORD版本
2有些固定格式报表的导出预行设置了XLT或其他格式的模版,当新的电脑时没有此模板文件时,会出错
解决:把模板移过来
3系统环境
C#编写的程序需要FRAMEWORK系统环境,如果两台电脑版本不同,可能在运行同一程序时发生一个正常一个出错
需要按程序的配置要求加装对应的FRAMEWORK
具体是什么异常?引用spirexlsdll来导出excel的方法可以参考下:
//创建一个workbook实例
Workbook wb = new Workbook();
//清除默认的工作表
wbWorksheetsClear();
//添加一个工作表并指定表名
Worksheet sheet = wbWorksheetsAdd("职员表");
//横向合并A1到G1的单元格
sheetRange["A1:G1"]Merge();
//写入数据到A1单元格,设置文字格式及对齐方式
sheetRange["A1"]Value = "环宇汽车公司员工基本情况登记表";
sheetRange["A1"]HorizontalAlignment = HorizontalAlignTypeCenter;
sheetRange["A1"]VerticalAlignment = VerticalAlignTypeCenter;
sheetRange["A1"]StyleFontIsBold = true;
sheetRange["A1"]StyleFontSize = 13F;
//设置第一行行高
sheetRows[0]RowHeight = 30F;
//创建一个DataTable
DataTable dt = new DataTable();
dtColumnsAdd("姓名");
dtColumnsAdd("性别");
dtColumnsAdd("出生日期");
dtColumnsAdd("学历");
dtColumnsAdd("联系电话");
dtColumnsAdd("职务");
dtColumnsAdd("工号");
dtRowsAdd("王伟", "男", "1990年2月10日", "本科", "13524756854", "销售","0054");
dtRowsAdd("李宁", "男", "1985年6月8日", "大专", "13259863247", "销售","0055");
dtRowsAdd("邓家佳", "女", "1989年11月25日", "本科", "13601540352", "销售","0029");
dtRowsAdd("杜平安", "男", "1978年4月16日", "中专", "13352014060", "保安","0036");
dtRowsAdd("唐静", "女", "1980年1月21日", "本科", "13635401489", "店长","0010");
//将DataTable数据写入工作表
sheetInsertDataTable(dt, true, 2, 1, true);
//设置该区域行高
sheetRange["A2:G7"]RowHeight = 15F;
//设置第三列及第五列列宽
sheetRange["A2:G7"]Columns[2]ColumnWidth = 15F;
sheetRange["A2:G7"]Columns[4]ColumnWidth = 15F;
//设置网格线样式及颜色
sheetRange["A2:G7"]BorderAround(LineStyleTypeMedium);
sheetRange["A2:G7"]BorderInside(LineStyleTypeThin);
sheetRange["A2:G2"]BorderAround(LineStyleTypeMedium);
sheetRange["A2:G7"]BordersKnownColor = ExcelColorsBlack;
//保存为xlsx文件
wbSaveToFile("创建Excelxlsx", FileFormatVersion2013);
(代码参考自原文。)
配置DCOM
具体配置方法如下:
1:在服务器上安装office的Excel软件
2:在"开始"->"运行"中输入dcomcnfgexe启动"组件服务"
3:依次双击"组件服务"->"计算机"->"我的电脑"->"DCOM配置"
4:在"DCOM配置"中找到"Microsoft Excel 应用程序",在它上面点击右键,然后点击"属性",d出"Microsoft Excel 应用程序属性"对话框
5:点击"标识"标签,选择"交互式用户"
6:点击"安全"标签,在"启动和激活权限"上点击"自定义",然后点击对应的"编辑"按钮,在d出的"安全性"对话框中填加一个"NETWORK SERVICE"用户(注意要选择本计算机名),并给它赋予"本地启动"和"本地激活"权限
7:依然是"安全"标签,在"访问权限"上点击"自定义",然后点击"编辑",在d出的"安全性"对话框中也填加一个"NETWORK SERVICE"用户,然后赋予"本地访问"权限
在window 2003 server中,如果还出现8000401a错误,在标示里面选择“下列用户”,填写登录计算机的并拥有对Excel本地 *** 作权限的用户。或者在标示里面选择“启用用户” 或者添加一个every one 用户
以上就是关于win8导出EXCEL报表提示应用程序发生了无法处理的异常全部的内容,包括:win8导出EXCEL报表提示应用程序发生了无法处理的异常、你好,导出Excel表格时,异常来自 HRESULT:0x800A03EC,请问你是怎么解决的谢谢、只是换了台电脑C#导出Excel就提示这个错误等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)