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

Вход

Регистрация

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

 

= Мир MS Excel/Вычитание элементов из скобок - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Вычитание элементов из скобок (Формулы/Formulas)
Вычитание элементов из скобок
Russt Дата: Вторник, 18.10.2016, 15:05 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010


72:51 (15:9, 10:18, 9:9, 22:11, 16:4) Сумма 123 Желаемый Итог 103
46:66 (16:18, 17:21, 4:13, 9:14) Сумма 112 Желаемый Итог 112

Если в скобках 5 пар чисел, то нужно из Суммы вычесть сумму пятой пары чисел

Если в скобках 4 пары чисел, то Сумма остается неизменной
К сообщению приложен файл: vopros.xls(32Kb)
 
Ответить
Сообщение

72:51 (15:9, 10:18, 9:9, 22:11, 16:4) Сумма 123 Желаемый Итог 103
46:66 (16:18, 17:21, 4:13, 9:14) Сумма 112 Желаемый Итог 112

Если в скобках 5 пар чисел, то нужно из Суммы вычесть сумму пятой пары чисел

Если в скобках 4 пары чисел, то Сумма остается неизменной

Автор - Russt
Дата добавления - 18.10.2016 в 15:05
Karataev Дата: Вторник, 18.10.2016, 15:32 | Сообщение № 2
Группа: Проверенные
Ранг: Ветеран
Сообщений: 641
Репутация: 226 ±
Замечаний: 0% ±

Excel
Функция, определенная пользователем:
[vba]
Код
Function Вычислить_сумму(ByVal var)
    
    Dim i As Long, lngLast As Long
    
    var = Split(var, "(")(1)
    var = Left(var, Len(var) - 1)
    var = Replace(var, ":", ", ")
    var = Split(var, ", ")
    
    lngLast = IIf(UBound(var) < 8, UBound(var), 7)
    
    For i = 0 To lngLast
        Вычислить_сумму = Вычислить_сумму + CDbl(var(i))
    Next

End Function
[/vba]
К сообщению приложен файл: 0166380.xls(38Kb)


 
Ответить
СообщениеФункция, определенная пользователем:
[vba]
Код
Function Вычислить_сумму(ByVal var)
    
    Dim i As Long, lngLast As Long
    
    var = Split(var, "(")(1)
    var = Left(var, Len(var) - 1)
    var = Replace(var, ":", ", ")
    var = Split(var, ", ")
    
    lngLast = IIf(UBound(var) < 8, UBound(var), 7)
    
    For i = 0 To lngLast
        Вычислить_сумму = Вычислить_сумму + CDbl(var(i))
    Next

End Function
[/vba]

Автор - Karataev
Дата добавления - 18.10.2016 в 15:32
Udik Дата: Вторник, 18.10.2016, 16:52 | Сообщение № 3
Группа: Друзья
Ранг: Старожил
Сообщений: 1214
Репутация: 153 ±
Замечаний: 0% ±

Excel 2013
Вариант с макрофункцией ВЫЧИСЛИТЬ
Код

=ЕСЛИ(ДЛСТР(ПОДСТАВИТЬ(B3;" ";ПОВТОР(" ";10);5))=ДЛСТР(B3);C3;C3-eval)

для макрофункции
Код

=ВЫЧИСЛИТЬ(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(ПРАВСИМВ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(Лист1!C3;" ";ПОВТОР(" ";10);5);")";" ");10));":";"+"))
К сообщению приложен файл: 0t.xls(33Kb)


вот вам барабан
яд 41001231307558 wm R419131876897
udik1968@gmail.com
 
Ответить
СообщениеВариант с макрофункцией ВЫЧИСЛИТЬ
Код

=ЕСЛИ(ДЛСТР(ПОДСТАВИТЬ(B3;" ";ПОВТОР(" ";10);5))=ДЛСТР(B3);C3;C3-eval)

для макрофункции
Код

=ВЫЧИСЛИТЬ(ПОДСТАВИТЬ(СЖПРОБЕЛЫ(ПРАВСИМВ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(Лист1!C3;" ";ПОВТОР(" ";10);5);")";" ");10));":";"+"))

Автор - Udik
Дата добавления - 18.10.2016 в 16:52
AlexM Дата: Вторник, 18.10.2016, 18:01 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3053
Репутация: 740 ±
Замечаний: 0% ±

Код
=СУММ(ПСТР(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(B3;")";":0:0");",";":");"(";":");":";ПОВТОР(" ";19));{0:1:11:12}*19+1;19)*{1:1:-1:-1})
или
Код
=СУММ(ПСТР(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(B3;")";":0:0");",";":");"(";":");":";ПОВТОР(" ";19));{0;11:1;12}*19+1;19)*{1;-1})
К сообщению приложен файл: vopros_01.xls(36Kb)


Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.


Сообщение отредактировал AlexM - Вторник, 18.10.2016, 18:04
 
Ответить
Сообщение
Код
=СУММ(ПСТР(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(B3;")";":0:0");",";":");"(";":");":";ПОВТОР(" ";19));{0:1:11:12}*19+1;19)*{1:1:-1:-1})
или
Код
=СУММ(ПСТР(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(B3;")";":0:0");",";":");"(";":");":";ПОВТОР(" ";19));{0;11:1;12}*19+1;19)*{1;-1})

Автор - AlexM
Дата добавления - 18.10.2016 в 18:01
Russt Дата: Среда, 19.10.2016, 21:48 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Всем большое спасибо! Быстро оперативно!!!
 
Ответить
СообщениеВсем большое спасибо! Быстро оперативно!!!

Автор - Russt
Дата добавления - 19.10.2016 в 21:48
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Вычитание элементов из скобок (Формулы/Formulas)
Страница 1 из 11
Поиск:

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