使用JavaScript调用Excel文件
Call Excel file with JavaScript
我对JavaScript(以及编码)还很陌生。问题如下。
我正在寻找一种方法来调用Excel文件,并在执行时在文档中设置一些筛选器。因此,请求的文件将按指定弹出。这应该适用于Windows 8.1。
ActiveX显然不起作用。有人知道怎么做吗?是否有使用ActiveX对象的替代品?
非常感谢您的帮助。
下面的代码我有迄今为止:
var sId = "1989";
var app = "Excel.Application";
var path = "C:''Temp''UmsatzGL.xls";
var sheet = "Output";
var range = "FilterWE";
var filterdefault = "(Alle)";
return_wbook = "T";
return_sheet = "T";
return_range = "T";
var UsrLanguage = "de";
switch (UsrLanguage) {
case "de":
alert_wbook = 'Excelmappe ' +path+' kann nicht gefunden werden!';
alert_sheet = 'Arbeitsblatt ' +sheet+' ist nicht vorhanden!';
alert_range = 'Bereich ' +range+' ist nicht vorhanden!';
alert_content = 'Kunde ' +sId+' ist nicht vorhanden!';
break;
case "en":
alert_wbook = 'Excel-File ' +path+' does not exist!';
alert_sheet = 'Worksheet ' +sheet+' does not exist!';
alert_range = 'Range ' +range+' does not exist!';
alert_content = 'Customer ' +sId+' does not exist!';
break;
default:
alert_wbook = 'Excel-File ' +path+' does not exist!';
alert_sheet = 'Worksheet ' +sheet+' does not exist!';
alert_range = 'Range ' +range+' does not exist!';
alert_content = 'Customer ' +sId+' does not exist!';
break;
}
function my_get_app(app){
try{return GetObject('',app)}
catch(e){return my_start_app(app)}
}
function my_start_app(app){
return new ActiveXObject(app)
}
function my_get_wbook(path){
try{return excel.Workbooks.Open(path)}
catch(e){return_wbook = "F";}
}
function my_get_sheet(sheet){
try{return excel.Worksheets(sheet)}
catch(e){return_sheet = "F";}
}
function my_get_range(range){
try{return excel_sheet.range(range)}
catch(e){return_range = "F";}
}
var excel = my_get_app(app);
var excel_file = my_get_wbook(path);
var excel_sheet = my_get_sheet(sheet);
var excel_range = my_get_range(range);
excel.displayalerts = false;
if (return_wbook == "F") {
alert(alert_wbook);
excel.quit();
} else if (return_sheet == "F") {
alert(alert_sheet);
excel.quit();
} else if (return_range == "F") {
alert(alert_range);
excel.quit();
}
if (return_wbook != "F" && return_sheet != "F" && return_range != "F") {
excel_range.value = filterdefault;
try{
excel_range.value = sId;
excel.Visible=true;
excel_sheet.Activate;
}
catch(e){
alert(alert_content);
excel.quit();
}
}
close();
}
我不太清楚你的问题是什么。但我可以推荐一个插件,它可以给你一个推力。
https://github.com/SheetJS/js-xlsx
我在Javascript Excel OpenFile 上找到了一个示例代码
<html>
<body>
<form name="form1">
<input type=button onClick="test()" value="Open File">
<br><br>
</form>
<script type="text/javascript">
function test() {
var Excel = new ActiveXObject("Excel.Application");
Excel.Visible = true;
Excel.Workbooks.Open("teste.xlsx");
}
</script>
</body>
</html>
相关文章:
- 将HTML表格导出到excel时,无法将数据加载到excel文件中
- 将JQuery Handontable保存到服务器上的excel文件中
- 生成的excel文件url
- CSV、PDF、Excel文件在dataTables的导出扩展中作为blob下载
- 使用JavaScript调用Excel文件
- 将JSON数据格式化为excel文件
- 将Excel/CSV文件中的数据导入angularjs-json对象中
- 如何使用 javascript 创建和编辑 excel 文件
- Javascript JSON 到 Excel 文件下载
- 使用node.js读取Excel文件
- 通过javascript用java处理excel文件
- 从javascript打开excel文件并传递参数
- 将HTML表导出到Excel,而不是使用C#下载文件
- Apache poi XSSF创建Excel文件-Create返回格式或文件扩展名无效的空文件
- 如何使用SheetJS从外部链接解析Excel文件(AmazonS3)
- 如何使用html中的javascript代码解析Excel文件
- 导出时如何重命名excel文件
- 如何在java web应用程序中捕获关闭打开的excel文件的事件
- 创建/下载一个带有chrome扩展名的excel文件
- 我想将任何xml文件导出到excel文件(xls或制表符分隔)