问一个问题:"Automation 服务器不能创建对象",下面的方法在html不错,在asp出错。
我使用了这个函数:
<SCRIPT LANGUAGE="JavaScript">
<!--
function AutomateExcel()
{
document.all('table1').style.display='none';
document.all('table2').style.display='none';
// Start Excel and get Application object.
var oXL = new ActiveXObject("Excel.Application");
// Get a new workbook.
var oWB = oXL.Workbooks.Add();
var oSheet = oWB.ActiveSheet;
var table = document.all.data;
var hang = table.rows.length;
var lie = table.rows(0).cells.length;
// Add table headers going cell by cell.
for (i=0;i<hang;i++)
{
for (j=0;j<lie;j++)
{
oSheet.Cells(i+1,j+1).Value = table.rows(i).cells(j).innerText;
}
}
oXL.Visible = true;
oXL.UserControl = true;
}
//-->
</SCRIPT>
<input type="hidden" name="out_excel" onclick="AutomateExcel();" value="导出到excel">
<input type="button" name="out_word1" onclick="javascript:AutomateExcel()" value="导出到excel">
网上说的3个解决方法我也试过了:
"Automation 服务器不能创建对象" 的解决方法
访问某些网站的时候,如果出现"Automation 服务器不能创建对象"的错误提示框,表明网页内的对象需要scrrun.dll的支持,可以尝试下面的方法:
开始--运行--regsvr32 scrrun.dll
不用重新安装操作系统和vs.net
有些脚本需要微软的 MSXML 控件才能进入。当使用 IE 5 以上版本的缺省安全模式时,会提示是否接受 MSXML 控件,如果接受,MSXML 将自动安装到您的机器上(得等上几分钟)。如果自动安装不成功,可以自行下载和安装 MSXML 3.0。
如果安装 MSXML 3 后仍然出现 'Automation 服务器不能创建对象' 错误,是因为您的机器禁止了所有的 ActiveX, 一般将 IE 的安全模式设为“中”即可。
但是问题还是存在,页面中我放了三个table,不知道是不是因为table的问题,其中一个table我是不能删除掉,我在函数里,在点击另存excel时隐藏了这两个table,但还是不行,请高手帮忙解决。