通过Javascript读取本地Excel文件内容的代码示例
作者:
读取本地Excel文件内容的Javascript代码:
<script type="text/javascript">
function read_excel(){
var filePath="D:\abcd9.com.xls"; //要读取的xls
var sheet_id=2; //读取第2个表
var row_start=3; //从第3行开始读取
var tempStr='';
try{
var oXL = new ActiveXObject("Excel.application"); //创建Excel.Application对象
}catch(err)
{
alert(err);
}
var oWB = oXL.Workbooks.open(filePath);
oWB.worksheets(sheet_id).select();
var oSheet = oWB.ActiveSheet;
var colcount=oXL.Worksheets(sheet_id).UsedRange.Cells.Rows.Count ;
for(var i=row_start;i<=colcount;i++){
if (typeof(oSheet.Cells(i,8).value)=='date'){ //处理第8列部分单元格内容是日期格式时的读取问题
d= new Date(oSheet.Cells(i,8).value);
temp_time=d.getFullYear()+"-"+(d.getMonth() + 1)+"-"+d.getDate();
}
else
temp_time=$.trim(oSheet.Cells(i,7).value.toString());
tempStr+=($.trim(oSheet.Cells(i,2).value)+" "+$.trim(oSheet.Cells(i,4).value)+" "+$.trim(oSheet.Cells(i,6).value.toString())+" "+temp_time+"\n");
//读取第2、4、6、8列内容
}
return tempStr; //返回
oXL.Quit();
CollectGarbage();
}
</script>
必须条件:
1、客户端必须安装Microsoft Excel activex控件(安装完整版Microsoft office即可),并在浏览器弹出“此网站需要运行以下加载项......”的提示时允许运行,否则js代码在创建Excel.Application对象时会出错。
2、JS读取本地Excel文件涉及到安全问题,默认设置下Microsoft Excel activex控件无执行权限。解决方案如下:
a. 点击浏览器“工具” -> “Internet选项” -> “安全”,选择“可信站点”。
b. 点击“站点(S)”按钮,将本网站添加到列表中;
c. 点击“自定义级别(C)...”,在安全设置中找到“ActiveX 控件和插件”节点下的“对未标记为可安全执行脚本的 ActiveX 控件初始化并执行脚本”,将其设置为“启用”。