无法使用替换来重命名单元格

时间:2018-11-29 23:05:51

标签: javascript excel csv xlsx

当前,我在.hta应用程序中有一些JavaScript,该应用程序打开.xlsx工作簿,将每张工作表另存为CSV文件,然后删除空白列/行。

我正在尝试引入一个新步骤,该步骤将电子表格中包含单个问号"?"的所有单元格重命名为空白""

这个想法是,重命名步骤是在删除空白行/列之前进行的。

当我执行以下代码时,csv文件中是否仍然存在问号?为什么重命名无法按预期进行?

          // Open the workbook.
          var wb = xlApp.Workbooks.Open(aFile.Path);
          log('Successfully opened the file.');

          // Save each worksheet as a CSV file.
          var sheetNum = 0;
          for(var sheetIndex = 1, sheetCount = wb.Sheets.Count; sheetIndex <= sheetCount; sheetIndex++) {

        var ws = wb.Sheets.Item(sheetIndex);
        var wsName = ws.Name;
        var usedRng = ws.UsedRange;

        //Replace "?" with ""

    var num_col = ws.UsedRange.columnCount
var num_row = ws.UsedRange.rowCount

for (i = 0; i < num_row; i++) { 
for (j = 0; j < num_col; i++) { 
    ws.UsedRange.getCell(i,j).values = ws.UsedRange.getCell(i,j).values.replace("?","");
}
}

        //Remove all blank rows

        for(var i = usedRng.Rows.Count; i > 0; i--){
            if( xlApp.CountA(usedRng.Rows(i)) == 0 ) usedRng.Rows(i).Delete();
        }

        //Remove all blank columns

    for(var i = usedRng.Columns.Count; i > 0; i--){
        if( xlApp.CountA(usedRng.Columns(i)) == 0 ) usedRng.Columns(i).Delete();
    }

0 个答案:

没有答案