Google скрипт, как создать скрипт для связи нескольких таблиц на основе их идентификаторов? - PullRequest
0 голосов
/ 16 марта 2019

Я знаю, что мой заголовок расплывчатый, но я не мог придумать лучшего заголовка для него.

Я пытаюсь создать сценарий, который соединяет центральную главную таблицу с 50 листами в ней и 50 отдельными.электронные таблицы, каждый из которых является копией одного из листов в основной электронной таблице.

На данный момент мой прогресс заключается в том, что у меня есть сценарий, в котором изменения из одной таблицы копируются в другую электронную таблицу с определенным идентификатором,используя имя листа в качестве общего значения, но вы можете видеть, что сразу возникает несколько проблем:

  1. Когда имена листов меняются, им больше не нужно делать ссылкуработает (уже решено: кредиты для Cooper)

  2. Каждый из отдельных файлов имеет свои индивидуальные идентификаторы, и мне нужен какой-то способ для ссылки на каждый из них (моя текущая идея для этого является нескольковид функции, которая создает 2d массив всех идентификаторов других электронных таблиц в папке в качестве первой строки и второй строкион называет листы в этих таблицах, и затем вы можете поместить эту функцию в мой текущий скрипт, который мне нужно связать с двумя таблицами)

мой текущий код (кредиты Куперу)

function onEdit(e){
  var ss=SpreadsheetApp.openById('id-of-the-other-sheet');
  var sh=ss.getSheetByName(e.range.getSheet().getName());
  var rg=sh.getRange(e.range.rowStart,e.range.columnStart);
  rg.setValue(e.value);
} 

Заранее благодарю за всю вашу помощь, я знаю, что это довольно большой проект, но все материалы приветствуются.

:)

1 Ответ

0 голосов
/ 17 марта 2019

Масштабирование проекта

Общее время запуска триггера G Suite Free Edition составляет 3 часа. Так получается, что на электронную таблицу уходит около 3,6 минуты.

Я сделал несколько измерений и получил среднее время выполнения 0,4263 секунды. Таким образом, при 3,6 минуты * 60 секунд в минуту / 0,4263 секунды на операцию, что составляет чуть более 500 изменений в день на электронную таблицу. Я полагаю, что это может сработать.

Для учетной записи G Suite Business, для которой будет более 1000 изменений в день на одну электронную таблицу.

Я с нетерпением жду вашего кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...