powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Нужно проссумировать строку: "*85"; "*780"; ; "орпроп"; 23; должно плоучиться 865
6 сообщений из 6, страница 1 из 1
Нужно проссумировать строку: "*85"; "*780"; ; "орпроп"; 23; должно плоучиться 865
    #38443923
Valll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помогите пожалуйста с формулой!

Имеется строка, например: А1:D1. Некоторые ячейки заполнены: *85; *780; ; ывап; 23. Короче, имеются тексты в виде числа со звёздочкой, пустые ячейки, тексты, числа. Нужно сложить числа-тексты со звёздочкой. При этом игнорировать все остальные ячейки строки. Нужна формула массива.

Вот что у меня пока получилось: {=ОТБР(СУММ(ЗНАЧЕН(ЕСЛИ(ДЛСТР(F4:K4)=0;"0.01";ПСТР(F4:K4;2;ДЛСТР(F4:K4)))));0)}

Но формула суммирует и числа, а если есть тексты, то выдаёт ошибку...
...
Рейтинг: 0 / 0
Нужно проссумировать строку: "*85"; "*780"; ; "орпроп"; 23; должно плоучиться 865
    #38443948
Фотография Serge 007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: vbnet
1.
=СУММ(ЕСЛИ(ЕЧИСЛО(ПОИСК("~*";F4:K4));--ПСТР(F4:K4;2;99)))
...
Рейтинг: 0 / 0
Нужно проссумировать строку: "*85"; "*780"; ; "орпроп"; 23; должно плоучиться 865
    #38443956
Фотография Serge 007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ещё вариант:
Код: vbnet
1.
=СУММ(ЕСЛИ(ЕЧИСЛО(ПОИСК("~*";F4:K4));--ПОДСТАВИТЬ(F4:K4;"*";)))
...
Рейтинг: 0 / 0
Нужно проссумировать строку: "*85"; "*780"; ; "орпроп"; 23; должно плоучиться 865
    #38444015
Valll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей, спасибо большое! Классно и быстро! Теперь скажу для чего было задумано может кому пригодится.

Классический план/факт. Чтобы не городить лишние колонки просто плановым значениям присваивается "звёздочка", а потом по факту ставится значение.

Но дальше больше. Таким образом можно без макросов осуществлять суммирование по цвету!!! Делаем в ячейке условное форматирование на присутствие звёздочки. Как только в ячейке звёздочка с числом - она окрашивается в жёлтый цвет, а формула суммирует по звёздочке, но визуально кажется по цвету - уже применил на практике - прикольно получилось!

С приветом!
...
Рейтинг: 0 / 0
Нужно проссумировать строку: "*85"; "*780"; ; "орпроп"; 23; должно плоучиться 865
    #38444171
Фотография Serge 007
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Валерий, не сказал бы что это хорошая идея...
1. Формулы массива затрудняют вычисления (на больших диапазонах это особенно заметно)
2. Текстовые выражения чисел вынуждают прибегать к различным ухищрениям для их обработки, а сводные таблицы вообще не будут обрабатывать текст как число
3. Условное форматирование (да и вообще любое форматирование) в базах данных не имеет никакого смысла и недопустимо в принципе

ЗЫ Насторожило что диапазон горизонтальный F4:K4, получается что БД не нормализованная?
...
Рейтинг: 0 / 0
Нужно проссумировать строку: "*85"; "*780"; ; "орпроп"; 23; должно плоучиться 865
    #38445426
Valll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей, Это не для базы данных. Табличка табеля выходов на работу, где присутствуют план/факт по часам. 31 день в месяце... Если бы делал 2 столбца на день - 64 столбца, а так обошёлся в 31... Меня устраивает. Спасибо за формулу.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Нужно проссумировать строку: "*85"; "*780"; ; "орпроп"; 23; должно плоучиться 865
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]