Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Есть таблица

https://docs.google.com/spreadsheets/d/1Aj-dIt0r2Zv2YBs0O_dZ0usat27jICAkYSlW7t8rZ8k/edit?usp=sharing

Надо написать скрипт, который заполняет первую табличку, используя начальные данные из второй таблицы + данные из листов, созданных по шаблону.

Алгоритм примерно такой:

1) Функция вставляется в первую пустую ячейку результирующей таблицы,

2) Автоматически определяется сколько строк надо будет заполнить (столбцов всегда 3, а кол-во строк может меняться, можно добавлять и удалять счета). Определить это можно идя вниз от активной и найдя первую не пустую ячейку. Или же можно забить количество счетов константой в коде, которую легко поменять (в 1 месте).

3) Каждая ячейка из диапазона (в тестовом файле диапазон это B5:D14) заполняется по правилу:

а) Начальное значение - для ячейки B5 - это G5, для С8 I8 и тд

б) + все операции, начиная от даты, записанной в H1 до сегодняшнего числа из листов - отчетов по месяцам (ф-ия для итерации по листам описана ниже).

в) Очередная запись с очередного листа учитываяется в соответствующей валюте в счете, соответствующему записи в колонке "Счет" в каждом отдельном месяце.

В итоге будет построена таблица, учитывающая начальные данные и все операции от определенного числа.

// Код для итерации по нужным листам:

// var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets();

// var sum = 0;

// var re = /.+\s[0-9]{4}$/

// var regExp = new RegExp(re);

// for (var i = 0; i

// var sheet = sheets;

// if (sheet.getName().match(regExp)) {

// var val = sheet.getRange("I1").getValue();

// sum += val;

// }

Просьба в заявке оставлять цену и сроки исполнения.

10 лет назад
hum111
35 лет
17 лет в сервисе
Был
год назад

Заявки фрилансеров

Нет заявок фрилансеров