Eingangssumme in Excel kontrollieren

Eingangssumme in Excel kontrollieren

Wenn Zelle a1 = 25 + 30 + 40 + 10 ist, gibt es dann eine Formel, um Zelle b1 gleich a1 zu machen, außer für alle Zahlen unter 25? Dann wäre es b1 = 30 + 40.

Antwort1

Versuchen Sie, die Funktionen Formulatext und Filterxml zu verwenden, die in Excel 2013 oder höher verfügbar sind

Geben Sie in A1Folgendes ein:=25+30+40+10

Geben Sie in B1der Formel Folgendes ein:

=SUMPRODUCT(FILTERXML("<a><b>"&SUBSTITUTE(MID(FORMULATEXT(A1),2,99),"+","</b><b>")&"</b></a>","//b[.>25]"))

Bildbeschreibung hier eingeben

Antwort2

Dies ist eine VBA-UDF (auch bekannt alsBenutzerdefinierte Funktion). Kopieren Sie den Code und fügen Sie ihn in ein Codeblatt eines VBA-Standardmoduls ein.

Option Explicit

Function AddendsIf(rng As Range, c As String)

    Dim i As Long, a As Variant, f As String, s As Double

    f = Mid(rng.Cells(1).Formula, 2)

    a = Split(f, "+")

    For i = LBound(a) To UBound(a)

        If Application.Evaluate(a(i) & c) Then

            s = s + Val(a(i))

        End If

    Next i

    AddendsIf = s

End Function

Sie können es wie jede andere native Arbeitsblattfunktion wieder im Arbeitsblatt verwenden.

Bildbeschreibung hier eingeben

Bildbeschreibung hier eingeben

Wenn Ihre Version von Excel dieFORMULATEXT-Funktiondann sollten Sie in der Lage sein, dies mit dem zu koppelnFILTERXML-Funktionum etwas Ähnliches zu erreichen.


EinSummandist jeder einzelne Wert, der eine Summe ergibt.

verwandte Informationen