Javascript 使用excel activeX保存而不是另存为

Javascript 使用excel activeX保存而不是另存为,javascript,excel,activex,Javascript,Excel,Activex,我正在使用javascript和activeX保存和编辑excel文档的数据。到目前为止一切正常。但现在我想写一个新的版本,我可以更新一个特定的单元格,并保持其他单元格的位置不变 以下是我正在使用的代码: function Write() { var Excel, Book; // Declare the variables Excel = new ActiveXObject("Excel.Application"); // Create the Excel applicatio

我正在使用
javascript
activeX
保存和编辑excel文档的数据。到目前为止一切正常。但现在我想写一个新的版本,我可以更新一个特定的单元格,并保持其他单元格的位置不变

以下是我正在使用的代码:

function Write() {
    var Excel, Book; // Declare the variables
    Excel = new ActiveXObject("Excel.Application"); // Create the Excel application object.
    Excel.Visible = false; // Make Excel invisible.
    Book = Excel.Workbooks.Add() // Create a new work book.


    Book.ActiveSheet.Cells(1,1).Value = document.A1.value;

    Book.SaveAs("G:/whiteboard.xls");  
    Excel.Quit(); // Close Excel with the Quit method on the Application object.
    alert("Uppgifter sparade");
   }
我想保存,而不是保存为


有什么想法吗?

以防有人还在找这个。 使用excelObj.ActiveWorkbook.Save()保存Excel文件。 这里有一个例子

function saveExcel() {

  var excel = new ActiveXObject("Excel.Application");  
  excel.Visible = false;
  var fso = new ActiveXObject("Scripting.FileSystemObject");


  var path = "file:\\\\C:\\Users\\User\\Desktop\\TestFile.xls";
  var excel_file = excel.Workbooks.Open(path); 
  var excel_sheet = excel_file.Worksheets(1); 

  //Editing all cells from Row 6 to 10 and Column 1 to 5
  for (var row = 6; row <=10; row++) {
    for (var col = 1; col <=5 ; col++) {
        excel_sheet.Cells(row,col).Value = "Setting New Cell Data"; 
      };
  };
  //Save Excel    
  excel.ActiveWorkbook.Save();

  alert("Excel Saved!");
  //showing excel are editing is done.
  excel.Visible = true;
  excel = null;
  excel_file = null;

};
函数saveExcel(){
var excel=新的ActiveXObject(“excel.Application”);
excel.Visible=false;
var fso=新的ActiveXObject(“Scripting.FileSystemObject”);
var path=“file:\\\C:\\Users\\User\\Desktop\\TestFile.xls”;
var excel_file=excel.Workbooks.Open(路径);
var excel\u sheet=excel\u file.工作表(1);
//编辑第6行至第10行和第1列至第5列的所有单元格

对于(var row=6;row我认为这在上下文中是不可能的-在任何情况下,您都应该将新书作为文件保存到任何位置,而不仅仅是保存:任何应用程序都会要求您在第一次保存时指定文件路径。交互式Excel或Excel VBA都不允许保存新工作簿,因为它会创建一个新文件,就像临时文件一样,所以你必须指定路径和名称,所以ActiveX也不允许这样做。