кнопка «Создать» для добавления новой строки с сегодняшней датой и других пустых полей - PullRequest
0 голосов
/ 20 апреля 2019

Я пытаюсь создать кнопку (положение должно быть фиксированным, чтобы кнопка оставалась видимой даже при прокрутке листа вниз).Я смог нарисовать его, но теперь я застрял на шаге настройки кнопки для этого:

  • После нажатия на кнопку, он должен добавить новую строку (как строка 16).В полях даты, я хотел бы получить предварительно заполненную сегодняшнюю дату.Остальные поля должны быть пустыми.
  • Строка 15 - это старая строка со вставленными и выбранными данными из выпадающего списка и поля даты.

enter image description here

Есть идеи, пожалуйста?

1 Ответ

0 голосов
/ 20 апреля 2019

Я нашел ответ сам:

// global 
var ss = SpreadsheetApp.getActive();

function my(){       
  var sh = ss.getActiveSheet(), lRow = sh.getLastRow(), mylastrow=lRow + 1; 
  var lCol = sh.getLastColumn(), range = sh.getRange(lRow,1,1,lCol);
  sh.insertRowsAfter(lRow, 1);
  range.copyTo(sh.getRange(lRow+1, 1, 1, lCol), {contentsOnly:false});

  SpreadsheetApp.getActiveSheet().getRange('A'+mylastrow).setValue('');
  SpreadsheetApp.getActiveSheet().getRange('B'+mylastrow).setValue(new Date());
  SpreadsheetApp.getActiveSheet().getRange('C'+mylastrow).setValue('0');
  SpreadsheetApp.getActiveSheet().getRange('D'+mylastrow).setValue('');
  SpreadsheetApp.getActiveSheet().getRange('E'+mylastrow).setValue(new Date());
  SpreadsheetApp.getActiveSheet().getRange('F'+mylastrow).setValue('');
  SpreadsheetApp.getActiveSheet().getRange('G'+mylastrow).setValue('');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...