Показать сообщение отдельно
  #1 (permalink)  
Старый 15.07.2021, 14:14
Новичок на форуме
Отправить личное сообщение для dima272 Посмотреть профиль Найти все сообщения от dima272
 
Регистрация: 15.07.2021
Сообщений: 1

Скрипт Timestamp, работает только при данных введенных вручную. Как исправить?
Здравствуйте. Мне нужно немного доработать скрипт автоматического проставления даты и времени при внесении новых данных в Гугл Таблицах. Текущая версия скрипта рабочая, но результат показывает только при введении данных вручную. Мне же нужно добавить несколько моментов.
1. Есть столбец А в котором отображается время и дата внесённой информации из столбца Б, столбец Б с кодом товара который ссылается на столбец С. Если я пытаюсь протянуть формулу по столбцу B для отображения данных то Дата и Время в столбце А не отображаются. Как это можно исправить?
2. Первая таблица у меня на листе 1, и данные которые получились нужно продублировать на лист 2. В данном случае я ссылаюсь на нужную ячейку в листе А, но если данные из столбца Б и С спокойно отображает то саму дату внесения из столбца А не отображает. Перепробовал разные скрипты но увы ничего не меняется..
3. Если данные из столбца B протянуть вниз то скрипт на эти изменения не реагирует, и соответственно дата внесения в столбце А не отображается.



function onEdit(e) {
var sheet = e.source.getActiveSheet();
var idCol = e.range.getColumn();
var idRow = e.range.getRow();
if ( idCol == 2 && sheet.getName() =='FB data' ) {
var Value = e.range.offset(0, -1).getValues(); //  
if ( Value == "" ) {

var vartoday = getDate();
var varnow = getTime();


 var time = new Date();
    time = Utilities.formatDate(time, "GMT+03:00", "dd/MM/yyyy HH:mm:ss");
   var r = e.range;
 
sheet.getRange(idRow, 1).setValue(varnow);
}
}
}

function getTime() {
var today = new Date();
today.setDate(today.getDate());
//return Utilities.formatDate(today, 'PST', 'yyyy.MM.dd');
return Utilities.formatDate(today, 'GMT+03:00', "dd/MM/yyyy HH:mm:ss");
}

Последний раз редактировалось dima272, 15.07.2021 в 14:20.
Ответить с цитированием