Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
Суммирование чисел, записанных через "|"
 
Задача №1
Есть в столбике такая запись:
123|2005 (строка 1)
135|4500 (строка 2)
345|6900 (строка 3)
Надо в строке 4 получить итоговую сумму слева | сумму справа, т.е 123+135+345|2005+4500+6900
603|13405 (строка 4)

Задача №2
Есть строки типа
123_впраопраопр (строка 1)
234_ыолаовлолв (строка 2)
Мне надо забрать, только, то что ДО знака _, т.е в данном примере мне надо получить столбик
123
234
Изменено: D.Frolov - 4 Апр 2015 12:23:20
 
В обоих случаях можно воспользоваться встроенным средством Excel "текст по столбцам" (данные - текст по столбцам).
В первом случае, в качестве разделителя указать "|", во втором "_"
Кому решение нужно - тот пример и рисует.
 
Цитата
Пытливый написал: ... В обоих случаях...

off
И этом - http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=read&FID=1&TID=65126&TITLE_SEO=65126-dobryy-den-uvazhaemye-spetsialisty-podskazhite-pozhaluysta-formulu ?!. ;)
"Ctrl+S" - достойное завершение ваших гениальных мыслей!.. ;)
 
Формула массива:
Код
=СУММ(ПСТР(A1:A3;1;НАЙТИ("|";A1:A3)-1)*1)
Excel 2013
 
1. Гугл докс формула =СУММ(ПСТР(A1:A3;1;НАЙТИ("|";A1:A3)-1)*1) дает ошибку.
2. 2ой случай разделение по столбцам понятно этот вопрос решен.  
 
При чем тут Гугл Докс, если в вопросе речь идет о формуле Excel?
Кому решение нужно - тот пример и рисует.
 
Цитата
1. Гугл докс формула =СУММ(ПСТР(A1:A3;1;НАЙТИ("|";A1:A3)-1)*1) дает ошибку.
Не дает! Введите такую формулу: (диапазон Ваш)
Код
=ArrayFormula(sum(Mid(B9:B11;1;find("|";B9:B11)-1)*1))
Изменено: Rustem - 4 Апр 2015 15:59:27
Excel 2013
 
Простите значит некорректно создал запрос, нужно в Гугл докс решить данную задачу.
 
Ага отлично, посчитало только левый столбец, а надо чтобы поставило разделитель и посчитало правый http://screencast.com/t/tg8wFelD47md
Изменено: D.Frolov - 4 Апр 2015 16:18:09
 
Ага...Теперь по аналогии сами...
Excel 2013
 
Справку надо смотреть, попробую, но вы на всякий подстрахуйте.  
 
Не получается, ни все могут писать формулы.
Изменено: D.Frolov - 4 Апр 2015 16:34:15
 
Цитата
D.Frolov написал: но вы на всякий подстрахуйте.
случаи разные бывают ;)
Согласие есть продукт при полном непротивлении сторон.
 
Да верное решение, но надо гугл докс формулу.  
 
Цитата
D.Frolov написал: надо гугл докс формулу
Видимо Вам на форум по ГуглДокс, здесь все больше по Excel
Согласие есть продукт при полном непротивлении сторон.
 
Да, уже выше давали ответ, просто он только половинку считает, а надо и вторую.  
 
Предлагаю UDF, которая выделяет нужный фрагмент по разделителю
Код
Function ВыделитьЧисло(ByVal Строка As String, _
Optional Позиция As Long = 1, Optional Разделитель As String = "|") As Variant
Dim Arr
Arr = Split(Строка, Разделитель)
If ДоРазделителя > (UBound(Arr) + 1) Then
    ВыделитьЧисло = CVErr("#N/A")
    Exit Function
End If
L = InStr(Строка, Разделитель)
ВыделитьЧисло = Val(Arr(Позиция - 1))
End Function

 
=ArrayFormula(sum(Mid(B9:B11;1;find("|";B9:B11)-1)*1))
 
Только Рустем что ли знал((
Изменено: D.Frolov - 4 Апр 2015 17:40:40
 
Код
=ARRAYFORMULA(SUM(MID(B9:B11;1;FIND("|";B9:B11)-1)*1))&"|"&ARRAYFORMULA(SUM(RIGHT(B9:B11;LEN(B9:B11)-FIND("|";B9:B11))*1))
Изменено: Rustem - 4 Апр 2015 20:28:36
Excel 2013
 
Ошибка обнаружена циклическая зависимость
 
Проверяйте свою формулу. Моя работает.
Excel 2013
 
Код
=CONCATENATE(SUMPRODUCT(--LEFT(A2:A4;SEARCH("|";A2:A4)-1));"|";SUMPRODUCT(--RIGHT(A2:A4;LEN(A2:A4)-SEARCH("|";A2:A4))))
 
ой как интересно нынче на форуме!

Rustem, а какие левые вопросы помимо гугл докса планируется ещё обсуждать в основной ветке?
про танчики темки не будет?
или может кто манную кашу попросит научить готовить?
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
Спасибо:
Rustem
jakim
Все получилось.  
Страницы: 1
Читают тему (гостей: 1)