Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как сделать, чтобы Filter() в Google Sheets выдавал не формулы в ячейках, а значение ячеек?

Space Master -_- Знаток (435), открыт 3 недели назад
Моя формула:
=ArrayFormula(ПОИСКПОЗ(ТРАНСП(filter($A$1:$A$80;$B$1:$B$80));'СТП'!$A$1:$A))
Должна подтянуть номера строк на другом листе, в которых найдены значения из столбца A и в столбце B значение "ИСТИНА". Но вот незадача: в ячейке А2 указана формула массива "=ArrayFormula('СТП'!A2:A)", и первая формула для этой ячейки вытаскивает значение "77" - номер последней заполненной ячейки в этом массиве. При этом в таблице эта ячейка отображается как текстовое значение, как первая ячейка в передаваемом ячейкой массиве. Как мне указать моей формуле filter, чтобы она принимала не формулу в ячейке, а её текстовое значение? Картинка 1 - формула в ячейке А2, картинка 2 - то, что она должна найти на листе СТП, картинка 3 - результат, который имею на данный момент

1 ответ
Sasha SASHA Ученик (234) 3 недели назад
Добрый вечер! Я посмотрел ваш вопрос и готов ответить как я думаю.

Проблема в том, что функция `FILTER` в Google Sheets работает с формулами, а не с их результатами. Вам нужно преобразовать формулы в текстовые значения перед использованием в `FILTER`.

Вот как можно исправить вашу формулу:

=ArrayFormula(ПОИСКПОЗ(ТРАНСП(filter(VALUE($A$1:$A$80);$B$1:$B$80));'СТП'!$A$1:$A))


Функция `VALUE` преобразует значения в диапазоне `A1:A80` из формул в их текстовые значения. Теперь `FILTER` будет работать с текстовыми значениями, а не с формулами.

Надеюсь я помог, обращайтесь!
Похожие вопросы