Как зайти в Даркнет?!
25th January, 01:11
4
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
892
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
948
0
Очень долго работает Update запрос Oracle
27th January, 09:58
912
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
905
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
938
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1724
0
период по дням
25th October, 10:44
3955
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3720
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4613
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4380
0
Помогите пожалуйста решить задачи
24th November, 23:53
6084
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4350
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4395
0
Метода Крамера С++
23rd October, 11:55
4308
0
помогите решить задачу на C++
22nd October, 17:31
4002
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4492
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2598
0
Использование VLOOKUP в Формуле массива в электронных таблицах Google
Фактически я хочу дать числовые оценки алфавитным классам и суммировать их. В Excel, помещая функцию LOOKUP в Формулу массива работает:
{=SUM(LOOKUP(grades, scoringarray))}
С функцией VLOOKUP это не работает (только получает оценку за первый класс). Google Spreadsheets, похоже, не имеет функции LOOKUP и VLOOKUP не работает таким же образом, используя:
=SUM(ARRAYFORMULA(VLOOKUP(grades, scoresarray, 2, 0)))
или
=ARRAYFORMULA(SUM(VLOOKUP(grades, scoresarray, 2, 0)))
Можно ли это сделать (но у меня неправильный синтаксис)? Можете ли вы предложить метод, который позволяет проводить вычисления в одной простой ячейке, как это, а не прятать поисковые запросы где-то еще и суммировать их впоследствии?
Боюсь, я думаю, что ответ будет отрицательным. Из текста справки о http://docs.google.com/support/spreadsheets/bin/answer.py?ответ=71291&query=arrayformula&topic=&type=
Реальная сила ARRAYFORMULA приходит, когда вы берете результат одного из этих вычислений и заключаете его в формулу, которая действительно принимает аргументы массива или диапазона: SUM, MAX, MIN, CONCATENATE,
Поскольку vlookup берет одну ячейку для поиска (в первом аргументе), я не думаю, что вы можете заставить его работать, не используя отдельный диапазон поисков.
Я все еще не могу видеть формулы в вашем примере (только значения), но это именно то, что я пытаюсь сделать с точки зрения результата; очевидно, я уже могу сделать это "by the side" и суммировать отдельно - ключ для меня делает это в одной ячейке.
Я снова посмотрел на него сегодня утром-использование функции MATCH для поиска работает в Формуле массива. Но тогда функция INDEX этого не делает. Я также пытался использовать его с OFFSET и INDIRECT без успеха. Наконец, функция CHOOSE , похоже, не принимает диапазон ячеек в качестве своего списка для выбора - диапазон деградирует до одного значения (первая ячейка в диапазоне). Следует также отметить, что функция CHOOSE принимает только 30 значений на выбор (согласно документации). Все это очень раздражает. Однако теперь у меня есть рабочее решение в одной ячейке: используя функцию CHOOSE и явно перечисляя результирующие ячейки одну за другой в аргументах, подобных этому:
=ARRAYFORMULA(SUM(CHOOSE(MATCH(D1:D8,Lookups!$A$1:$A$3,0),
Lookups!$B$1,Lookups!$B$2,Lookups!$B$3)))
Очевидно, что это не очень хорошо распространяется, но, надеюсь, таблицы поиска по своей природе достаточно фиксированы. Для больших таблиц поиска это боль, чтобы ввести все ячейки по отдельности, и некоторые люди могут превысить предел в 30 ячеек.
Я бы, конечно, приветствовала более элегантное решение!
Я знаю, что эта нить довольно старая, но я уже некоторое время боролся с этой же проблемой. В конце концов я нашел решение (ну, Франкенштейнское вместе). Он лишь немного более элегантен, но должен быть способен работать с большими наборами данных без проблем.
В этом решении используется следующее:
=ARRAYFORMULA(SUM(INDIRECT(ADDRESS(MATCH(), MATCH())))
как суррогат для функции vlookup.
Надеюсь, это кому-то поможет!
вы можете сделать это очень легко, закодировав его в таблице VR:
=SUM(IFERROR(ARRAYFORMULA(VLOOKUP(A2:A, {{"A", 6};
{"B", 5};
{"C", 4};
{"D", 3};
{"E", 2};
{"F", 1}}, 2, 0)), ))
или вы можете использовать некоторые боковые ячейки с правилами:
=SUM(IFERROR(ARRAYFORMULA(VLOOKUP(A2:A, E2:F, 2, 0)), ))
альтернативы: https://webapps.stackexchange.com/a/123741/186471