Страницы: 1
RSS
Как посчитать сумму чисел находящихся одной ячейке, стоимость нескольких услуг прописывается в одну ячейку, нужно посчитать ее сумму
 
Есть выгрузка по чеку клиента в рамках одного визита, проблема в том что если клиент воспользовался несколькими услугами, то в одной ячейке будет прописана стоимость 3-ех услуг, как посчитать сумму этой ячейки, чтобы не потерять фио клиента?
Пример во вложении.
Изменено: Тимур Гулиев - 14.03.2022 16:45:43 (внес пояснения)
 
Текст по столбцам, в качестве разделителя Ctrl+J
 
Код
как посчитать сумму этой ячейки

Код
Sub GetSumma()
Dim mo As Object
Dim n As Integer
Dim i As Long
Dim iLastRow As Long
 iLastRow = Cells(Rows.Count, 1).End(xlUp).Row
With CreateObject("VBScript.RegExp")
  .Global = True
  .MultiLine = True
  .Pattern = "^\d+$"
  For i = 3 To iLastRow
    If .Test(Cells(i, 2)) Then
      Set mo = .Execute(Cells(i, 2))
      For n = 0 To mo.Count - 1
        Cells(i, 3) = Cells(i, 3) + CDbl(mo(n))
      Next
    End If
  Next
End With
End Sub
 
Цитата
написал:
екст по столбцам, в качестве разделителя Ctrl+J
Вот спасибо тебе! Напиши мне +79372678887 - закину на вкусняшки денежку))
 
Цитата
Тимур Гулиев написал:
закину на вкусняшки денежку
Если Вы мне, то достаточно простого человеческого спасибо
 
уж сколько раз подобное разбиралось
=SUM(IFERROR(--MID(SUBSTITUTE(CHAR(10)&B3;CHAR(10);REPT(" ";99));ROW($1:$10)*99;99);))
Изменено: БМВ - 14.03.2022 20:03:24
По вопросам из тем форума, личку не читаю.
 
Если есть ФИЛЬТР.XML, то можно так
Код
=ЕСЛИОШИБКА(СУММ(ФИЛЬТР.XML("<t><s>"&ПОДСТАВИТЬ(B3;СИМВОЛ(10);"</s><s>")&"</s></t>";"//s"));0)
Изменено: Msi2102 - 14.03.2022 20:41:42
 
Msi2102, можно , но это как раз тот случай когда не проще, не короче и медленнее
Код
=SUM(IFERROR(--MID(SUBSTITUTE(CHAR(10)&B9,CHAR(10),REPT(" ",99)),ROW($1:$10)*99,99),)) 
         773,4375
Код
=IFERROR(SUM(FILTERXML("<t><s>"&SUBSTITUTE(B9,CHAR(10),"</s><s>")&"</s></t>","//s")),0)
        1921,875
но есть + ,произвольное количество слогаемых.
Изменено: БМВ - 14.03.2022 21:24:10
По вопросам из тем форума, личку не читаю.
 
Цитата
БМВ написал:
но это как раз тот случай когда не проще,
так я и не спорю, просто как ещё один вариант
Страницы: 1
Наверх