Clever-Excel-Forum

Normale Version: Worksheet Function Sum Product
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Zusammen!
Ich versuche mich grade an einem Summenprodukt VBA Code.

Der Code Funktioniert auch soweit, allerdings wollte ich fragen wie ich folgenden Teil des Codes anpassen muss, damit ich beim Ausführen immer das Kriterium der aktuellen Zeile beachte? 

Im Beispiel Code ist das E35:
Code:
Private Sub CommandButton8_Click()
ActiveCell = Evaluate("SUMPRODUCT((B28:B3500=""Stunden"")*(E28:E3500=E35)*(AM28:AM3500)*(K28:K3500))") * ((1 + Range("H13")) ^ Range("AN20"))
End Sub


Wie müsste ich den Code nun anpassen, dass ich das ganze immer bezogen auf die aktuelle Zeile raus bekomme?

Zum Beispiel: ich habe Zeile 123 aktiviert, dann sollte der Code wie folgt aussehen:

Code:
Private Sub CommandButton8_Click()

ActiveCell = Evaluate("SUMPRODUCT((B28:B3500=""Stunden"")*(E28:E3500=E123)*(AM28:AM3500)*(K28:K3500))") * ((1 + Range("H13")) ^ Range("AN20"))
End Sub


Vielen Dank & Gruß!

Hab an sowas in die Richtung gedacht, leider funktioniert das nicht:

Code:
ActiveCell = Evaluate("SUMPRODUCT((B28:B3500=""Stunden"")*(E28:E3500=Cells(ActiveCell.row,5))*(AM28:AM3500)*(K28:K3500))") * ((1 + Range("H13")) ^ Range("AN20"))
Hallo diving_excel,

probier doch mal
Code:
ActiveCell = Evaluate("SUMPRODUCT((B28:B3500=""Stunden"")*(E28:E3500=" & Cells(ActiveCell.row,5)) & "*(AM28:AM3500)*(K28:K3500))") * ((1 + Range("H13")) ^ Range("AN20"))

Du willst ja nicht den Text "Cells...." in der Formel stehen haben sondern den entsprechenden Wert.

Gruß,
Lutz
Hallo,

PHP-Code:
ActiveCell Evaluate("SUMPRODUCT((B28:B3500=""Stunden"")*(E28:E3500=" Cells(ActiveCell.Row5) & ")*(AM28:AM3500)*(K28:K3500))") * ((Range("H13")) ^ Range("AN20")) 

Gruß Uwe
Vielen Dank!