#google-apps-script
Вопрос:
Я записываю время работы сотрудников, и оно заносится в таблицу Google. В конце каждого дня у меня есть расписания, которые копируют записи за каждый день с листа «В реальном времени» на лист «История», копируя все собранные данные. Существует различное количество записей и 8 столбцов данных, но я хочу скопировать только 3 столбца данных, которые представляют собой имя, время и номер задания. На данный момент я использую этот код:
function dailyLogv2() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sourceSheet = ss.getSheetByName('Real Time');
var logSheet = ss.getSheetByName('History');
var lastRow = logSheet.getLastRow();
var range = sourceSheet.getRange('A1:C30');
range.copyTo(logSheet.getRange(lastRow 1, 1), {contentsOnly: true});
}
Единственная проблема в том, что я не могу понять, как скопировать ТОЛЬКО те записи, которые были за этот день. Приведенный выше код, очевидно, копирует 30 строк, поэтому каждый день в таблице истории появляются пробелы, если в ней меньше 30 записей. Как мне создать код, чтобы скопировать ТОЛЬКО точное количество записей, которые там были? Я думаю, что что-то вроде getValues() может сработать, но я не знаю, как это реализовать.
Комментарии:
1. Принимайте только даты, значение которых больше или равно
new Date(new Date().getFullYear(), new Date().getMonth(), new Date().getDate()).valueOf()
amp;amp; меньше, чемnew Date(new Date().getFullYear(), new Date().getMonth(), new Date().getDate() 1).valueOf()
последний срок, может не потребоваться, если у вас нет дат после текущей даты.2. Вы хотите получить все строки с данными, или вы хотите, чтобы из этих строк были получены данные с сегодняшнего дня? Не могли бы вы поделиться примером листа?
3. Извини, надо было объяснить получше. Таблица реального времени очищается каждую ночь с помощью триггера на основе времени ПОСЛЕ того, как данные за этот день были скопированы в таблицу истории, поэтому каждый день записи в таблице реального времени начинаются в строке 1. Лист истории содержит ВСЕ предыдущие данные, а также информацию, копируемую каждый день. Я бы поделился простыней, но я не знаю, как это сделать!
4. Вы можете проверить Общий доступ к файлам с Google Диска , а затем поделиться листом (или его копией без персональных данных) с
Anyone with the link