Size: a a a

Чат | Google Таблицы и скрипты

2018 April 18

EN

Eugeny Namokonov in Чат | Google Таблицы и скрипты
источник

AI

Alexander Ivanov in Чат | Google Таблицы и скрипты
Viktor Kazakov
не могу понять запись вот этой формулы
=ARRAYFORMULA(СУММЕСЛИ(ЕСЛИ(СТОЛБЕЦ(B1:H1);СТРОКА(A2:A4));СТРОКА(A2:A4);B2:H4))
можешь объяснить, плиз?)
Я не очень понимаю формулы на русском, но похоже на то, что это форсирование обхода ARRAYFORMULA. Не все формулы поддерживают ARRAYFORMULA, но некоторые из них работают нормально, когда в них передается в виде аргумента простая формула обхода типа ROW, COLUMN, SIGN

Особенно советую разобрать работу VLOOKUP и HLOOKUP в ARRAYFORMULA
источник

VK

Viktor Kazakov in Чат | Google Таблицы и скрипты
вы мне эту формулу написали, когда я спрашивал про сумму массивов
источник

VK

Viktor Kazakov in Чат | Google Таблицы и скрипты
сказали либо через суммесли либо через ммульт
источник

VK

Viktor Kazakov in Чат | Google Таблицы и скрипты
я нашел тот ваш файл
источник

VK

Viktor Kazakov in Чат | Google Таблицы и скрипты
и не понимаю смысла записи, не понимаю, что делают те или иные аргументы и почему они записаны именно в таком порядке)
источник

AI

Alexander Ivanov in Чат | Google Таблицы и скрипты
Viktor Kazakov
сказали либо через суммесли либо через ммульт
Правильно сказали. Именно по этой причине
источник

AI

Alexander Ivanov in Чат | Google Таблицы и скрипты
ЕСЛИ(СТОЛБЕЦ(B1:H1);СТРОКА(A2:A4)) - заставляет работать SUMIF как надо.
источник

VK

Viktor Kazakov in Чат | Google Таблицы и скрипты
вот это самое главное) что за вычисления проводит эта запись?
источник

VK

Viktor Kazakov in Чат | Google Таблицы и скрипты
столбец() дает номер столбца
строка() дает номер строки
источник

AI

Alexander Ivanov in Чат | Google Таблицы и скрипты
Никаких вычислений, она просто выдает TRUE()
источник

VK

Viktor Kazakov in Чат | Google Таблицы и скрипты
они типо матрицу образуют?
источник

AI

Alexander Ivanov in Чат | Google Таблицы и скрипты
Viktor Kazakov
они типо матрицу образуют?
Не саму матрицу, а ее обход по элементам.
источник

VK

Viktor Kazakov in Чат | Google Таблицы и скрипты
а почему true()? когда столбцов больше чем строк?
источник

VK

Viktor Kazakov in Чат | Google Таблицы и скрипты
или типо любое значение столбца - это строка()
в этом логика?
источник

AI

Alexander Ivanov in Чат | Google Таблицы и скрипты
Да, любой требуемый размер. Попробуй просто изменить размер того или иного диапазона и расчеты "сдвинутся".
источник

VK

Viktor Kazakov in Чат | Google Таблицы и скрипты
не будь arrayformula была бы запись вида
ЕСЛИ(СТОЛБЕЦ($B$1:$H$1);СТРОКА(A2) ?
источник

AI

Alexander Ivanov in Чат | Google Таблицы и скрипты
Viktor Kazakov
не будь arrayformula была бы запись вида
ЕСЛИ(СТОЛБЕЦ($B$1:$H$1);СТРОКА(A2) ?
Запись была бы бесполезна.
источник

AI

Alexander Ivanov in Чат | Google Таблицы и скрипты
Переслано от Alexander Ivanov
Решение задачи по открытию вкладки/окна браузера с из Google Apps Script https://googleappsscriptrc.blogspot.se/2018/04/how-to-open-url.html
источник

VK

Viktor Kazakov in Чат | Google Таблицы и скрипты
=ARRAYFORMULA(СУММЕСЛИ(ЕСЛИ(СТОЛБЕЦ(B1:H1);СТРОКА(A2:A4));СТРОКА(A2:A4);B2:H4))

я просто вот что не понимаю
обычная суммесли - это (диапазон;проверка диапазона;суммируемый диапазон)
B2:H4 суммируемый диапазон я понимаю
СТРОКА(A2:A4) почему это проверка диапазона я тоже понимаю, он вроде как бы ищет нужную строку

а почему вот самый первый диапазон тогда нельзя просто задать той же самой СТРОКА(A2:A4)

типо вот у тебя диапазон СТРОКА(A2:A4) проверь совпадет ли он сам с собой СТРОКА(A2:A4) и тогда сложи из  B2:H4
источник