导出EXCEL出现了两个错误

wo554006164 2010-01-06 12:42:09
以下导出代码

function exportExcel() {
var atblData = document.getElementById("tblist");
if (typeof (EXPORT_OBJECT) != "object") {
document.body.insertAdjacentHTML("afterBegin", "<OBJECT style='display:none' classid=clsid:0002E510-0000-0000-C000-000000000046 id=EXPORT_OBJECT></Object>");
}
with (EXPORT_OBJECT) {
DataType = "HTMLData";
HTMLData = atblData.outerHTML;
try {
ActiveSheet.Export("C:\\Documents and Settings\\Administrator\\桌面\\月度预算表.xls", 0);
alert('已经导出到你的桌面');
}
catch (e) {
alert(e.message);
alert('汇出Excel表失败,请确定已安装Excel2000(或更高版本),并且没打开同名xls文件');
}
}
}

以上报错:ActiveSheet未定义
我就自己定义下,以下是定义后的代码:

function exportExcel() {
var ActiveSheet = new ActiveXObject("OWC.Spreadsheet");
var atblData = document.getElementById("tblist");
if (typeof (EXPORT_OBJECT) != "object") {
document.body.insertAdjacentHTML("afterBegin", "<OBJECT style='display:none' classid=clsid:0002E510-0000-0000-C000-000000000046 id=EXPORT_OBJECT></Object>");
}
with (EXPORT_OBJECT) {
DataType = "HTMLData";
HTMLData = atblData.outerHTML;
try {
ActiveSheet.Export("C:\\Documents and Settings\\Administrator\\桌面\\月度预算表.xls", 0);
alert('已经导出到你的桌面');
}
catch (e) {
alert(e.message);
alert('汇出Excel表失败,请确定已安装Excel2000(或更高版本),并且没打开同名xls文件');
}
}
}

这又报错了,错误:" Automation服务器不能创建对象 "


我用了以下两种解决方法都不行.
方法一:
开始-运行:regsvr32 scrrun.dll


方法二:
请将以下语句复制到记事本中,另存为后缀为.cmd的文件,并运行。当然在命令行下一句句运行也没问题。
echo 正在修复,这个过程可能需要几分钟,请稍候……
rundll32.exe advpack.dll /DelNodeRunDLL32 %systemroot%\System32\dacui.dll
rundll32.exe advpack.dll /DelNodeRunDLL32 %systemroot%\Catroot\icatalog.mdb
regsvr32 /s comcat.dll
regsvr32 /s asctrls.ocx
regsvr32 /s oleaut32.dll
regsvr32 /s shdocvw.dll /I
regsvr32 /s shdocvw.dll
regsvr32 /s browseui.dll
regsvr32 /s browseui.dll /I
regsvr32 /s msrating.dll
regsvr32 /s mlang.dll
regsvr32 /s hlink.dll
regsvr32 /s mshtml.dll
regsvr32 /s mshtmled.dll
regsvr32 /s urlmon.dll
regsvr32 /s plugin.ocx
regsvr32 /s sendmail.dll
regsvr32 /s mshtml.dll /i
regsvr32 /s scrobj.dll
regsvr32 /s corpol.dll
regsvr32 /s jscript.dll
regsvr32 /s msxml.dll
regsvr32 /s imgutil.dll
regsvr32 /s cryptext.dll
regsvr32 /s inseng.dll
regsvr32 /s iesetup.dll /i
regsvr32 /s cryptdlg.dll
regsvr32 /s actxprxy.dll
regsvr32 /s dispex.dll
regsvr32 /s occache.dll
regsvr32 /s iepeers.dll
regsvr32 /s urlmon.dll /i
regsvr32 /s cdfview.dll
regsvr32 /s webcheck.dll
regsvr32 /s mobsync.dll
regsvr32 /s pngfilt.dll
regsvr32 /s licmgr10.dll
regsvr32 /s hhctrl.ocx
regsvr32 /s inetcfg.dll
regsvr32 /s trialoc.dll
regsvr32 /s tdc.ocx
regsvr32 /s MSR2C.DLL
regsvr32 /s msident.dll
regsvr32 /s msieftp.dll
regsvr32 /s xmsconf.ocx
regsvr32 /s ils.dll
regsvr32 /s msoeacct.dll
regsvr32 /s wab32.dll
regsvr32 /s wabimp.dll
regsvr32 /s wabfind.dll
regsvr32 /s oemiglib.dll
regsvr32 /s directdb.dll
regsvr32 /s inetcomm.dll
regsvr32 /s msoe.dll
regsvr32 /s oeimport.dll
regsvr32 /s msdxm.ocx
regsvr32 /s dxmasf.dll
regsvr32 /s laprxy.dll
regsvr32 /s l3codecx.ax
regsvr32 /s acelpdec.ax
regsvr32 /s mpg4ds32.ax
regsvr32 /s danim.dll
regsvr32 /s Daxctle.ocx
regsvr32 /s lmrt.dll
regsvr32 /s datime.dll
regsvr32 /s dxtrans.dll
regsvr32 /s dxtmsft.dll
regsvr32 /s wshom.ocx
regsvr32 /s wshext.dll
regsvr32 /s vbscript.dll
regsvr32 /s scrrun.dll mstinit.exe /setup
regsvr32 /s msnsspc.dll /SspcCreateSspiReg
regsvr32 /s msapsspc.dll /SspcCreateSspiReg
echo.
echo.
echo 修复成功!任意键退出!
pause>nul
...全文
138 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
avengercf 2010-01-06
  • 打赏
  • 举报
回复
看完了,是缺少相关库文件吧。
avengercf 2010-01-06
  • 打赏
  • 举报
回复
JS往客户机上写文件?你是不会有那个权限的,除非他安装了你的第3方控件。
dafuw 2010-01-06
  • 打赏
  • 举报
回复
找不到和 “OWC.Spreadsheet” 相关的库。。重新安装相关的支持库。
paopao072 2010-01-06
  • 打赏
  • 举报
回复
没遇到过,先顶上去!

87,902

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧