Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

4 Март 2021, 22:20 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Вы можете задать вопрос по LibreOffice или Apache OpenOffice без регистрации, используя форму
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1   Вниз
  Печать  
Автор Тема: Подсчёт значений с условием в столбце с формулой  (Прочитано 244 раз)
0 Пользователей и 1 Гость смотрят эту тему.
eeigor
Ubuntu 18.04 LTS • LO 7.0.2.2
Форумчанин
***
Offline Offline

Пол: Мужской
Сообщений: 380



« Стартовое сообщение: 15 Февраль 2021, 14:44 »

Добрый день!
Раскрываю тему
Как подсчитать в отфильтрованных строках количество текстовых значений в столбце?
Значения получены формулой извлечения данных – ВПР (VLOOKUP), возвращающей найденную строку, в случае ошибки, возвращается пустая строка "" (в ней и есть проблема: она считается). Пустые строки надо при подсчёте пропустить.
Я, конечно, знаю один вариант (subtotal with condition) с использованием функции СМЕЩ (OFFSET), но он тормозит.
Есть ли другой способ?

СЧЁТЕСЛИ (COUNTIF) не учитывает фильтр.
AGGREGATE или SUBTOTAL не позволяют включать условие.
AGGREGATE(6, …) – PRODUCT, но нет SUMPRODUCT, чтобы перемножить с условием…
« Последнее редактирование: 15 Февраль 2021, 14:59 от eeigor » Записан
economist
Форумчанин
***
Offline Offline

Сообщений: 1 392


« Ответ #1: 15 Февраль 2021, 15:14 »

Служебный столбец, в котором формула возвращает 1 для текста и 0 для пустоты/числа.
И сверху ПРОМЕЖУТОЧНЫЕ ИТОГИ или как оно там.
Записан

Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...
sokol92
Форумчанин
***
Offline Offline

Пол: Мужской
Сообщений: 305


WWW
« Ответ #2: 15 Февраль 2021, 15:27 »

"Формулист" из меня никакой, зато есть хорошие примеры для подражания. Автофильтр установлен в A1:A7 (A1 заголовок):

Код:
=SUMPRODUCT(SUBTOTAL(103;OFFSET(A1;ROW(1:6);))*(A2:A7<>""))

Для больших диапазонов, естественно, не эффективен. Вариант из ответа #1 выглядит оптимальным.
« Последнее редактирование: 15 Февраль 2021, 15:55 от sokol92 » Записан

Владимир.
eeigor
Ubuntu 18.04 LTS • LO 7.0.2.2
Форумчанин
***
Offline Offline

Пол: Мужской
Сообщений: 380



« Ответ #3: 15 Февраль 2021, 16:16 »

Всё понимаю. У меня ещё и ВПР работает «слева», в смысле извлекает столбец слева от искомого (тормоз 2).
Ну а через вспомогательный столбец всё можно решить. Думал, может, появилось что-то, но, вижу, что надо ждать, пока в АГРЕГАТ (AGGREGATE) не добавят SUMPRODUCT.
Спасибо за ответы.
Записан
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!