我知道这类问题不属于这里,但这是我最后的希望得到答案和解决方案。我已经制作了一个html和javascript程序来通过Active X读取excel文件,但问题是每当我运行该页面它运行正常但是当我关闭它时,excel文件保持打开状态,如果我运行此页面100次然后关闭然后会有100个未封闭的excel文件导致我的PC速度减慢。第二个问题是,当我尝试打开该应用程序正在使用的excel文件时(当我尝试打开excel文件时应用程序当前没有运行)它没有打开而没有给出错误,打开了excel文件的窗口并在第二部分关闭。我不知道如何解决这个问题。如果我的代码中有任何问题,那么它就是
var xVal = 1;
var yVal = 2
function readdata(x,y) {
x = xVal;
y = yVal;
try {
var excel = new ActiveXObject("Excel.Application");
excel.Visible = false;
var excel_file = excel.Workbooks.Open("D:\\Test1.xls");// alert(excel_file.worksheets.count);
var excel_sheet = excel_file.Worksheets("Sheet1");
var data = excel_sheet.Cells(x, y).Value;
//alert(data);
drawWithexcelValue(data);
xVal = xVal + 1;
}
catch (ex) {
alert(ex);
}
}
这是我正在阅读excel文件的代码。
答案 0 :(得分:1)
尝试
data = null;
excel_sheet = null;
excel_file.Close(); // important
excel_file = null;
excel.Quit();
excel = null;
以此(反向)顺序。这(几乎)等同于在VBA中将这些值设置为Nothing
。