1

Я могу легко суммировать список значений через запятую с помощью формулы:

=SUM(11,13,17,23)

Я хочу сделать то же самое со списком в отдельной ячейке, поэтому, если A1 содержит:

11,13,17,23

Я хотел бы, чтобы формула из одной ячейки возвращала 64

Ни =SUM(A1) ни =SUM(INDIRECT(A1)) работают:

Я могу получить ответ, используя либо TextToColumns или UDF():

Option Explicit
Public Function zum(SIN As String) As Variant
    Dim ary, a
    ary = Split(SIN, ",")

    For Each a In ary
        zum = zum + Val(a)
    Next a
End Function

Но я бы предпочел использовать формулу с одной ячейкой, а не VBA.

1 ответ1

3

Вам нужна вспомогательная ячейка, где вы пишете формулу в B1, например

=SUBSTITUTE(A1,",","+")
Затем Определите Result и в Относится к записи =Evaluate(B1)
а где хочешь сумму напиши = результат

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .