3

TL; DR: TEXTJOIN() в массиве возвращает пробел - не может использовать VBA для решения проблемы альтернативным способом.

Я создал несколько листов с сильной зависимостью от функций Array из-за ограничений, не позволяющих мне создавать книги с макросами.

Пока что все работает хорошо, но у меня проблема с TEXTJOIN().

По сути, это следующая формула:

{=TEXTJOIN(CHAR(10);TRUE;IF(A3:A100="test";B3:B100;""))}

возвращая пробел (не ошибка). Использование инструмента «Оценить формулу» показывает, что предпоследний шаг генерирует правильный массив (с двумя значениями строки, не равными NULL). Однако следующий шаг пуст. Смотрите скриншот:

Оценить формулу для функции Textjoin

Редактировать: более четкое изображение:

Оцените формулу для Textjoin, ячейка остается пустой

Это озадачивало меня в течение достаточно долгого времени, поэтому любая помощь или альтернативные решения, которые не зависят от VBA, будут высоко оценены!

1 ответ1

0

Я подозреваю, что ваша формула работает правильно, но у меня нет Excel 2016 для проверки моих подозрений. То, что я думаю, происходит, вы объединяете 100 возвратов каретки. Это приведет к выводу, который будет где-то выше 1000 пикселей в высоту, но Excel разрешит высоту строки только 407 пикселей, поэтому видимая текстовая часть вывода будет скрыта от просмотра.

Вы можете подтвердить мои подозрения с помощью следующего теста: скопируйте выходную ячейку (Summary!C21) и вставьте его в пустой сеанс Блокнот. Если ячейка содержит данные, вы сможете увидеть их в блокноте. Кроме того, вы можете преобразовать формулу в ее значение, используя [F2], затем [F9], а затем пытаясь прокрутить вывод вверх и вниз.

Если мои подозрения верны, я боюсь, что вам нужно будет изучить другой метод отображения нужных вам данных - возможно, с помощью дополнительных формул для фильтрации данных, которые вы хотите отобразить.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .