簡體   English   中英

使用Google腳本重置范圍

[英]Resetting range with Google Script

我正在嘗試刪除范圍內不需要的列和行

我一直收到錯誤Sorry, it is not possible to delete all non-frozen rows. 但只是間歇地

從不在列上僅行

我的標題行凍結了

我不知道為什么要檢查以確保不刪除所有行, if (maxRows-lastRow > 0 && maxRows > 1)使用if (maxRows-lastRow > 0 && maxRows > 1)

請任何幫助,這令人沮喪

謝謝

function ResetRange(arrShtNames) {
  var allsheets = arrShtNames;
  for (var s in allsheets){
    var sheet= SpreadsheetApp.getActiveSpreadsheet().getSheetByName(allsheets[s]);

    var maxColumns = sheet.getMaxColumns(); 
    var lastColumn = sheet.getLastColumn();

    var maxRows = sheet.getMaxRows();
    var lastRow = sheet.getLastRow();

    if (maxColumns-lastColumn > 0 && maxColumns > 1){
      sheet.deleteColumns(lastColumn+1, maxColumns-lastColumn);
    };

    if (maxRows-lastRow > 0 && maxRows > 1){
      sheet.deleteRows(lastRow+1, maxRows-lastRow);
    };
  }
}

嘗試這個:

我的第一行和我的左列被凍結。

function resetRange(nA){
  //var namesA=['myPage'];
  var namesA=nA;
  var ss=SpreadsheetApp.getActive();
  if(namesA){
    for(var i=0;i<namesA.length;i++){
      var sh=ss.getSheetByName(namesA[i]);
      if(sh.getMaxColumns()>sh.getLastColumn()){
        sh.deleteColumns(sh.getLastColumn()+1,sh.getMaxColumns()-sh.getLastColumn());
      }
      if(sh.getMaxRows()>sh.getLastRow()){
        sh.deleteRows(sh.getLastRow()+1, sh.getMaxRows()-sh.getLastRow());
      } 
    }
  }
}  

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM