Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function main(){
- const sh = SpreadsheetApp.getActiveSheet();
- const range1 = sh.getRange("a1:c").getValues().filter(t=> t[0]);
- const lastValue = range1[(range1.length-1)][1];
- const lastRow = getLength(range1);
- const range2 = sh.getRange("g1:g").getValues();
- const range3 = sh.getRange("g1:h").getValues();
- let row_from_dict = getFromDict(range3, searchInDict(lastValue, range2));
- row_from_dict.unshift(new Date())
- sh.getRange(lastRow + 1, 1, 1, 3).setValues([row_from_dict]);
- }
- function searchInDict(search, search_arr) {
- return search_arr.flat().indexOf(search);
- }
- function getFromDict(dict, index) {
- return dict[index+1];
- }
- function getLengthCol(arr) {
- let lr;
- for (var x = 0; x < arr.length; x++) {
- if (arr[x]) { lr = (x + 1) }
- }
- return lr
- }
- //пользовательская функция, определяем последнюю заполненную строку в переданном диапазоне
- function getLength(arr) {
- //объявляем пустую переменную lr
- let lr;
- //делаем цикл по строкам диапазон
- for (var x = 0; x < arr.length; x++) {
- //определяем строку
- const row = arr[x];
- //фильтруем строку от пустых значений, если что-то осталось - значит проваливаемся в if
- if (row.filter(t => t).length != 0) {
- //и делаем lr равным x (номер строки в диапазоне + 1
- lr = (x + 1)
- }
- }
- //после того, как цикл закончится возвращаем lr
- return lr
- }
Add Comment
Please, Sign In to add comment