ich möchte eine Matrixformel in VBA anwenden, wobei Region, Konzern und Status Breichsnamen sind.
Beispiel:
=SUMMENPRODUKT((Region="N01")*(Konzern="Metro")*(Status="1-offen"))
Wer kann mir helfen?
Vielen Dank!
Mike
=SUMMENPRODUKT((Region="N01")*(Konzern="Metro")*(Status="1-offen"))
Sub tst()
MsgBox Evaluate("=SUMPRODUCT((Region = ""N01"") * (Konzern = ""Metro"")" & _
" * (Status = ""1-offen""))")
End Sub
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Sub tst()
MsgBox Evaluate("=SUMPRODUCT((Region=""N01"")*(Konzern=""Metro"")" & _
"*(Status=""1-offen""))")
MsgBox Evaluate("=SUMPRODUCT((A17:A26=""N01"")*(C1:C10=""Metro"")" & _
"*(M2:M11=""1-offen""))")
MsgBox Evaluate("=SUMPRODUCT((A$17:A$26=""N01"")*(C1:C10=""Metro"")" & _
"*($M2:$M11=""1-offen""))")
End Sub
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-LintfortFunction SumProd(sRegion As String, sKonzern As String, sStatus As String)
Dim rRegion As Range
Dim rKonzern As Range
Dim rStatus As Range
Dim vErgebnis
With ActiveWorkbook.Worksheets("Wartungen HE09")
Set rRegion = .Range("D5:D8000")
Set rKonzern = .Range("B5:B8000")
Set rStatus = .Range("I5:I8000")
End With
SumProd = Evaluate("=SUMPRODUCT((" & rRegion & " = " & sRegion & ") * (" & rKonzern & " = " & _
sKonzern & ") * (" & rStatus & " = " & sStatus & "))")
End Function
Leider erhalte ich eine Fehlermeldung 'Typen unverträglich' :-(
Function SumProd(sRegion As String, sKonzern As String, sStatus As String)
SumProd = Evaluate("=SUMPRODUCT(('Wartungen HE09'!D5:D8000=""" & sRegion & """)" & _
" * ('Wartungen HE09'!B5:B8000" & "=""" & sKonzern & """)" & _
" * ('Wartungen HE09'!I5:I8000=""" & sStatus & """))")
End Function
Function SumProdR(sRegion As String, sKonzern As String, sStatus As String)
Dim rRegion As Range, strReg As String
Dim rKonzern As Range, strKon As String
Dim rStatus As Range, strSta As String
With ActiveWorkbook.Worksheets("Wartungen HE09")
Set rRegion = .Range("D5:D8000")
Set rKonzern = .Range("B5:B8000")
Set rStatus = .Range("I5:I8000")
strReg = "'" & .Name & "'!" & rRegion.Address(0, 0)
strKon = "'" & .Name & "'!" & rKonzern.Address(0, 0)
strSta = "'" & .Name & "'!" & rStatus.Address(0, 0)
End With
SumProdR = Evaluate("=SUMPRODUCT((" & strReg & "=" & sRegion & ") * (" & _
strKon & "=" & sKonzern & ") * (" & _
strSta & "=" & sStatus & "))")
End Function
Bei deinem Ansatz mit "...((" & rRegion & " = " & ... wird versucht,Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen