在我的系统中,我没有MS办公室,我有Openoffice。这里我的要求是我想用ActiveXObject(JavaScript)读取.xls .xlsx和.ods文件。使用下面的代码我只读取.xls文件。我怎样才能用ActiveX对象读取所有类型的excel文件?
<script type="text/javascript">
function ReadMyFile()
{
var ControlCn = new ActiveXObject("ADODB.Connection");
var Conn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = D:\\DailyReport.ods; Persist Security Info=False;Extended Properties=Excel 8.0;";
ControlCn.Open(Conn);
var rs = new ActiveXObject("ADODB.Recordset");
var SQL = "select * from [Sheet1$]";
rs.Open(SQL, ControlCn);
if(rs.bof)
{
document.write('No Data Avaliable');
}
if(!rs.bof)
{
rs.MoveFirst()
while(!rs.eof)
{
for(var i=0; i!= rs.fields.count; ++i)
{
document.write(rs.fields(i).value + ", ");
}
document.write("<br />");
rs.MoveNext()
}
}
rs.Close();
ControlCn.Close();
}
</script>
</head>
<body>
<input type="button" value="Click To Read Your File" onClick="ReadMyFile()">
</body>
答案 0 :(得分:0)
创建一个自动执行OpenOffice Calc的ActiveXObject:
var objServiceManager= new ActiveXObject("com.sun.star.ServiceManager");
请参阅https://www.openoffice.org/udk/common/man/tutorial/office_automation.html。
我认为这个对象不会处理执行SQL命令。