Я хотел бы «внутреннее соединение» 2 данных-диапазонов (Лист 1 & 2) «ID» и вывод ее результат в листе 3 (как показано ниже)Скрипт Google Apps Внутренней Регистрация Ranges
Для всех листов первая строка - это только заголовок, фактические значения начинаются со второй строки.
Лист 1 - это вся база данных (3000 строк), а лист 2 (1000 строк) - это выбор Листа 1 с дополнительными данными. Каждая запись (ID) присутствует только один раз в каждом листе.
Лист 3 должен показать включать только строки листа 2, но с данными соответствующей строке (по ID) из листа 1.
var sheetOneVals = sheetOne.getDataRange().getValues(); sheetOneVals.splice(0, 1);
var sheetTwoVals = sheetTwo.getDataRange().getValues(); sheetTwoVals.splice(0, 1);
Как это может быть сделано ? https://stackoverflow.com/a/17500836/379777 был почти тем, чего я хотел, за исключением того, что он использует клавиши, которых у меня нет в моем случае.
ЛИСТ 1:
A B C D
------------------------------------
1 | Name | Description | Price | ID |
------------------------------------
2 | ABC | Bla1 | 10 | 123 |
------------------------------------
3 | DEF | Bla2 | 8 | 234 |
------------------------------------
: | : | : | : | : |
: | : | : | : | : |
------------------------------------
ЛИСТ 2:
A B C D E
---------------------------------------
1 | ID | Cat1 | Cat2 | Cat3 | Nonsense |
---------------------------------------
2 | 123 | B | C | D | xyz |
---------------------------------------
: | : | : | : | : | : |
: | : | : | : | : | : |
---------------------------------------
ЛИСТ 3 (желаемый результат):
A B C D E F G
----------------------------------------------------------
1 | ID | Cat1 | Cat2 | Cat3 | Name | Description | Price |
----------------------------------------------------------
2 | 123 | B | C | D | ABC | Bla1 | 10 |
----------------------------------------------------------
: | : | : | : | : | : | : | : |
: | : | : | : | : | : | : | : |
----------------------------------------------------------
Благодарим вас за ответ. Вы правы, parseInt бесполезен. Я удалил его. Однако я не думаю, что ваше решение решает проблему. Я отредактировал текст, и, возможно, теперь яснее, что я хочу. – user3797772
Да, будет.Все значения будут сохранены в объекте с идентификатором в качестве ключа, прямое построение объекта будет выглядеть примерно так: 'myObject = {123: {Cat1: 'B', Cat2: 'C': Cat3: 'D' , Ерунда: 'xyz', Описание: 'Bla1', Price: 10, ID: 123, Name: 'ABC'}, 234 {то же, что и 123 с разными значениями}}; ', это идеально подходит для синтаксического анализа как двойной массив , причем 123 и 234 являются строками (а не литерным номером строки), и каждый ключ в нем находится в столбце. – Kriggs
Логика уже закодирована в связанном s.o. в вопросе. –