Математика
Мы хотим найти функцию, которая сопоставляет ячейку на листе 2 с комнатой и пассажиром на листе 1.
cell: (room x passenger)
Вы можете увидеть шаблон в этих числах.
Промежуточная формула выглядит следующим образом. Это сопоставляет ячейку на листе 2 с индексами комнаты и персон.
Given a cell index: i
room = round((i - 8) / 2) // -8 because we want to start with room1 at cell F9
passenger = (i mod 2) + 1
Эти формулы просто возвращают индексы. Поэтому мы должны сопоставить их с действительными ячейками на листе 1.
Given Room r and person p: (both previously calculated indices)
person_cell_letter = (Y + p - 1) // if this is possible. or if statement
// Goal is to get Y for person1 and Z for person2
person_cell_number = r + 1
Cell = person_cell_letter + person_cell_number
Я надеюсь, что эти формулы верны или, по крайней мере, приведут вас в правильном направлении. Если у вас есть какие-либо вопросы, вы можете задать их в комментарии.
Код
Эти формулы больше похожи на псевдокод, а не на реальный код. в зависимости от языка, который вы будете использовать, вы должны настроить эти формулы.
python
Если вы хотите, чтобы это делалось автоматически для вас, вы можете выбрать такой язык, как python. Он прост в использовании и имеет хорошие библиотеки для таких вещей. Я, вероятно, сначала преобразовал бы листы в другой формат, например, CSV или xlsx. В противном случае вам придется использовать API Google, который может быть сложным в использовании. Затем вы можете использовать библиотеку типа pandas для работы с этими данными в python. read excel манипулировать им, а затем написать обратно в excel . После этого должна быть возможность каким-то образом преобразовать этот обратно go листы Google.
скрипт листов Google
Другой, возможно, более простой способ - использовать скрипт листов Google . но я никогда не использовал его и ничего не могу сказать по этому поводу.