@Sergiyy

Оптимизация кода для Google Sheets (Google App Scripts) с автозаполнением даты?

Помогите пожалуйста завершить код. Идея в том, чтобы дата автоматически заполнялась в ячейке когда сумма доходит до нуля. Но проблема в том, что когда сумма рассчитывается по формуле и доходит до нуля, дата не появляется, а если ставлю в ручную в эту ячейку ноль - все работает.
// Столбец, который нужно проверить, если что-то введено.
const COLUMNTOCHECK = 20;
// В какую ячейку отметка даты и времени должна сместиться от места ввода. [строка столбец]
const DATETIMELOCATION = [0,-16];
// Страница
const SHEETNAME = 'Sheet 1'
 
function onEdit(e) {
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const sheet = ss.getActiveSheet();

  if( sheet.getSheetName() == SHEETNAME ) {
    const selectedCell = ss.getActiveCell();
   
    if( selectedCell.getColumn() == COLUMNTOCHECK && e.value <= 0) {
      const dateTimeCell = selectedCell.offset(DATETIMELOCATION[0],DATETIMELOCATION[1]);
      dateTimeCell.setValue(new Date());
      }
  }
}
  • Вопрос задан
  • 120 просмотров
Решения вопроса 1
ProgrammerForever
@ProgrammerForever Куратор тега Google Apps Script
Учитель, автоэлектрик, программист, музыкант
Возможно, что там и не ноль. Введите константу, число меньше которой можно считать нулём, и используйте:
//...
const epsilon = .01;
if((selectedCell.getColumn() == COLUMNTOCHECK) && (+e.value <= epsilon)) {
//...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы