现在有一段js,可以把数据从表格中copy到excel中。
目前现象是:询问是否保存的对话框的不能去掉,选择“是”后,出来的选择保存路径的对话框中,文件名是默认的Book1。 需要的效果是:不用询问是否保存,直接显示选择保存路径的对话框,并且文件名想默认为TestBook。不知道该如何实现?有其他的js可以实现也可以。 js代码如下:
var oTable = document.getElementById("tb_datashow");
if (navigator.userAgent.indexOf("MSIE")<0)
{
alert("PLEASE USE IE ");
return;
}
var oXL = null;
try
{
oXL = GetObject("","Excel.Application");
}
catch(e)
{
try
{
oXL = new ActiveXObject("Excel.Application");
}
catch(ex)
{
alert("EXCEL ERROR ");
return;
}
}
var oWB = oXL.Workbooks.Add();
var oSheet = oWB.ActiveSheet;
//oWB.Name = "TestBook"; //wrong
oSheet.Name = "AAA";
var sel = document.body.createTextRange();
sel.moveToElementText(oTable);
sel.select();
sel.execCommand("Copy");
oSheet.Paste();
oXL.Visible = false;
oSheet.Application.Quit();
window.opener=null;
window.close();
目前现象是:询问是否保存的对话框的不能去掉,选择“是”后,出来的选择保存路径的对话框中,文件名是默认的Book1。 需要的效果是:不用询问是否保存,直接显示选择保存路径的对话框,并且文件名想默认为TestBook。不知道该如何实现?有其他的js可以实现也可以。 js代码如下:
var oTable = document.getElementById("tb_datashow");
if (navigator.userAgent.indexOf("MSIE")<0)
{
alert("PLEASE USE IE ");
return;
}
var oXL = null;
try
{
oXL = GetObject("","Excel.Application");
}
catch(e)
{
try
{
oXL = new ActiveXObject("Excel.Application");
}
catch(ex)
{
alert("EXCEL ERROR ");
return;
}
}
var oWB = oXL.Workbooks.Add();
var oSheet = oWB.ActiveSheet;
//oWB.Name = "TestBook"; //wrong
oSheet.Name = "AAA";
var sel = document.body.createTextRange();
sel.moveToElementText(oTable);
sel.select();
sel.execCommand("Copy");
oSheet.Paste();
oXL.Visible = false;
oSheet.Application.Quit();
window.opener=null;
window.close();
参考:
http://msdn.microsoft.com/en-us/library/microsoft.office.tools.excel.worksheet.saveas(VS.80).aspx