Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Просуммировать цифры через запятую в ячейке - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Просуммировать цифры через запятую в ячейке (Формулы/Formulas)
Просуммировать цифры через запятую в ячейке
l-lisa Дата: Четверг, 03.01.2019, 15:20 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 198
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Добрый день, а подскажите пожалуйста как можно просуммировать цифры перечисленные через запятую расположенные в одной ячейке
К сообщению приложен файл: 4988701.xlsx(8.0 Kb)
 
Ответить
СообщениеДобрый день, а подскажите пожалуйста как можно просуммировать цифры перечисленные через запятую расположенные в одной ячейке

Автор - l-lisa
Дата добавления - 03.01.2019 в 15:20
vikttur Дата: Четверг, 03.01.2019, 15:41 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2921
Репутация: 525 ±
Замечаний: 0% ±

Формула массива, вводится тремя клавишами:
Код
=СУММ(ЕСЛИОШИБКА(--ПСТР(ПОДСТАВИТЬ(","&A2;",";ПОВТОР(" ";99));СТРОКА($1:$9)*99;99);))

Если значений больше/меньше, можно изменить СТРОКА($1:$9)
Если все суммируемые значения - однозначные числа, достаточно:
Код
=СУММ(ЕСЛИОШИБКА(--ПСТР(A2;{1;3;5;7;9;11;13};1);))

тоже формула массива.

Вариант - использование макрофункции (для работы макросы должны быть разрешены).
Ctrl+F3 - именованная формула:
Код
=ВЫЧИСЛИТЬ(ПОДСТАВИТЬ(Лист1!C16;",";"+"))

На листе:
Код
=выч
К сообщению приложен файл: 7678645.xlsm(8.5 Kb)


Сообщение отредактировал vikttur - Четверг, 03.01.2019, 15:46
 
Ответить
СообщениеФормула массива, вводится тремя клавишами:
Код
=СУММ(ЕСЛИОШИБКА(--ПСТР(ПОДСТАВИТЬ(","&A2;",";ПОВТОР(" ";99));СТРОКА($1:$9)*99;99);))

Если значений больше/меньше, можно изменить СТРОКА($1:$9)
Если все суммируемые значения - однозначные числа, достаточно:
Код
=СУММ(ЕСЛИОШИБКА(--ПСТР(A2;{1;3;5;7;9;11;13};1);))

тоже формула массива.

Вариант - использование макрофункции (для работы макросы должны быть разрешены).
Ctrl+F3 - именованная формула:
Код
=ВЫЧИСЛИТЬ(ПОДСТАВИТЬ(Лист1!C16;",";"+"))

На листе:
Код
=выч

Автор - vikttur
Дата добавления - 03.01.2019 в 15:41
bmv98rus Дата: Четверг, 03.01.2019, 15:45 | Сообщение № 3
Группа: Проверенные
Ранг: Старожил
Сообщений: 2278
Репутация: 399 ±
Замечаний: 20% ±

Excel 2013/2016
[offtop]vikttur, заскучал? :-)[/offtop]


Замечательный медведь, процентов на 20.
 
Ответить
Сообщение[offtop]vikttur, заскучал? :-)[/offtop]

Автор - bmv98rus
Дата добавления - 03.01.2019 в 15:45
vikttur Дата: Четверг, 03.01.2019, 15:47 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2921
Репутация: 525 ±
Замечаний: 0% ±

[offtop]Лень-матушка )
Надо бы работать... Но - причина: повышаю уровень подготовки :)[/offtop]


Сообщение отредактировал vikttur - Четверг, 03.01.2019, 15:53
 
Ответить
Сообщение[offtop]Лень-матушка )
Надо бы работать... Но - причина: повышаю уровень подготовки :)[/offtop]

Автор - vikttur
Дата добавления - 03.01.2019 в 15:47
AlexM Дата: Четверг, 03.01.2019, 16:30 | Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3841
Репутация: 968 ±
Замечаний: 0% ±

Excel 2003
Код
=СУММ(ПРАВБ(ЛЕВБ(ПОДСТАВИТЬ(0&A2&",0";",";ПОВТОР(" ";99));СТРОКА($1:$99)*99);99)^1)
Формула массива. Почти как первая формула viktturа, но СТРОКА($1:$99) сделана с запасом.



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
Сообщение
Код
=СУММ(ПРАВБ(ЛЕВБ(ПОДСТАВИТЬ(0&A2&",0";",";ПОВТОР(" ";99));СТРОКА($1:$99)*99);99)^1)
Формула массива. Почти как первая формула viktturа, но СТРОКА($1:$99) сделана с запасом.

Автор - AlexM
Дата добавления - 03.01.2019 в 16:30
l-lisa Дата: Пятница, 04.01.2019, 10:56 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 198
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Спасибо! hands
 
Ответить
СообщениеСпасибо! hands

Автор - l-lisa
Дата добавления - 04.01.2019 в 10:56
l-lisa Дата: Пятница, 04.01.2019, 10:57 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 198
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Спасибо! hands
 
Ответить
СообщениеСпасибо! hands

Автор - l-lisa
Дата добавления - 04.01.2019 в 10:57
sv2014 Дата: Пятница, 04.01.2019, 16:35 | Сообщение № 8
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 226
Репутация: 61 ±
Замечаний: 0% ±

Excel 2013
l-lisa, вариант UDF

[vba]
Код
Function aa&(t$)
   Dim i&
   With CreateObject("VBScript.RegExp"): .Pattern = "[^,]+": .Global = True
   For i = 0 To .Execute(t).Count - 1: aa = aa + .Execute(t)(i): Next
  End With
End Function
[/vba]
К сообщению приложен файл: example_04_01_2.xls(35.5 Kb)


Сообщение отредактировал sv2014 - Пятница, 04.01.2019, 16:36
 
Ответить
Сообщениеl-lisa, вариант UDF

[vba]
Код
Function aa&(t$)
   Dim i&
   With CreateObject("VBScript.RegExp"): .Pattern = "[^,]+": .Global = True
   For i = 0 To .Execute(t).Count - 1: aa = aa + .Execute(t)(i): Next
  End With
End Function
[/vba]

Автор - sv2014
Дата добавления - 04.01.2019 в 16:35
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Просуммировать цифры через запятую в ячейке (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс цитирования
© 2010-2019 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!