Syntax bei Evaluate / Public Function
09.03.2009 21:56:08
Peter
Mit untenstehender Funktionen habe ich versucht, 2 Matrixformeln in VBA zu lösen. Die Matrixformeln habe ich von Josef Ehrensberger erhalten.
Die UDF GRO resp. KLE geben mir jedoch den Fehlerwert 2015 zurück
Ich möchte in G1 das gleiche Ergebnis erhalten, wie in H1, resp. in G2 wie in H2 (vgl. Beispieldatei).
Mir ist nicht klar, weshalb das nicht funktioniert.
Danke für jeden Hinweis.
Gruss, Peter
Public Function GRO(Bereich As Range, Anzahl As Long)
Dim BName As String
BName = Right(Bereich.Name, Len(Bereich.Name) - 1)
'Evaluate("SUM(LARGE(Zahlen,ROW(INDIRECT(("1:"&D1)))))")
GRO = Evaluate("SUM(LARGE(" & BName & ",ROW(INDIRECT(( """ & "1:" & "&" & Anzahl & ")))))""")
End Function
Public Function KLE(Bereich As Range, Anzahl As Long)
Dim BName As String
BName = Right(Bereich.Name, Len(Bereich.Name) - 1)
'Evaluate("SUM(SMALL(Zahlen,ROW(INDIRECT(("1:"&D2)))))")
KLE = Evaluate("SUM(LARGE(" & BName & ",ROW(INDIRECT(( """ & "1:" & "&" & Anzahl & ")))))""")
End Function