原生JS利用ActiveXObject读取Excel数据

作者:清欢时间:2026-10-27 16:21:11浏览:120

本文介绍在IE浏览器环境下,如何使用原生JavaScript结合ActiveXObject对象读取本地Excel文件内容。通过创建Excel.Application实例,打开指定工作簿并遍历指定行列数据,最终将结果输出至页面。该方法依赖IE特有的COM组件支持,适用于内部系统或旧版浏览器场景。

Excel数据读取示例与目标效果

Excel文件中的数据大致如下所示: Excel数据读取示例与目标效果 期望在页面上实现如下输出效果: Excel数据读取示例与目标效果 具体的JavaScript源码如下:

JavaScript读取Excel核心代码

代码实现如下:

function readThis(){
var tempStr = "";
var filePath= document.all.upfile.value;
var oXL = new ActiveXObject("Excel.application");
var oWB = oXL.Workbooks.open(filePath);
oWB.worksheets(1).select();
var len = 100; // 要取到的多少条数据
var oSheet = oWB.ActiveSheet;
try{
for(var i=1;i<= len;i++){
tempStr+=("put(\""+oSheet.Cells(i,1).value+"\",\""+oSheet.Cells(i,2).value+"\");")+"<br>"; // 1和2分别代表第一列和第二列
}
}catch(e){
document.all.txtArea.innerHTML = tempStr;
}
document.all.txtArea.innerHTML = tempStr;
oXL.Quit();
CollectGarbage();
}

HTML界面结构实现

HTML源码如下:


代码实现如下:

<input type="file" id="upfile" /><input type="button" onclick="readThis();" value="读取">
<div id="txtArea" style="width:500px;height:500px;"></div>

浏览器兼容性说明

由于ActiveXObject对象仅受Internet Explorer浏览器支持,因此运行此代码时必须使用IE浏览器。目前看来这是可行的解决方案之一。

作者最新文章