GAS Class SpreadsheetApp: Добавить строку и ячейку слияния - PullRequest
0 голосов
/ 01 октября 2019

Хотелось бы, чтобы все было так просто, но это не сработало.

sheet.appendRow(['MERGE', '']).merge();

Как мне этого добиться?

Ответы [ 2 ]

1 голос
/ 01 октября 2019

Метод merge () необходимо применить к объекту диапазона.

Одна из возможностей сделать это будет:

function myFunction() {
  var sheet = SpreadsheetApp.getActive().getActiveSheet();
  var newRow=sheet.getLastRow()+1;
// the range dimensions should match the value array dimensions
  var range=sheet.getRange(newRow,1,1,2);
  range.setValues([['MERGE', '']]);
  range.merge(); 
}

Ссылки:

0 голосов
/ 01 октября 2019

Добавить строку

Это простой пример поиска строки с текущей датой и добавления ее на другой лист. В этом примере я также удаляю текущую строку в исходном листе, что делает ее более похожей на команду перемещения.

function findingRowsAndAppendingToAnotherSheet() {
  var ss=SpreadsheetApp.getActive();
  var ssh=ss.getSheetByName('Sheet1');
  var dsh=ss.getSheetByName('Sheet2');
  var srg=ssh.getRange(2,1,ssh.getLastRow()-1,ssh.getLastColumn());
  var vA=srg.getValues();
  var cdv=new Date(new Date().getFullYear(),new Date().getMonth(),new Date().getDate()).valueOf();
  var d=0;
  for(var i=0;i<vA.length;i++) {
    var dd=new Date(vA[i][0]);
    var ddv=new Date(dd.getFullYear(),dd.getMonth(),dd.getDate()).valueOf();
    if(ddv==cdv) {
      dsh.appendRow(vA[i]);//Appends row with current date to dsh
      ssh.deleteRow(i+2-d++);//Deletes ssh current row.  Effectively making this a move instead of a copy
    }
  }
}

Sheet1 & 2 перед запуском

enter image description here

enter image description here

Лист 1 и 2 после прогона

enter image description here

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...