WorksheetFunction.SumProduct oder Makro?
16.05.2024 11:07:38
Florian
mehr eine theoretische Frage: Vergleich Makro mit WorksheetFunction.
Ausgangslage: Gegeben sind zwei Arrays, wie im Beispiel unten. Die Produktsumme berechne ich dort mit einem Makro.
Es geht aber auch mit der Excel-Funktion WorksheetFunction.SumProduct, was ich bisher nicht in Betracht gezogen habe. Das scheint eine große Hilfe zu sein, da es schneller zu schreiben geht.
Sub Vergleich()
Dim Anzahl, Gewicht, c, Nummer As Long, GesamtGewicht1 As Double, GesamtGewicht2 As Double
Anzahl = Array(2, 4, 5)
Gewicht = Array(7, 2, 10)
'Berechnung mit For-Schleife:
ReDim c(LBound(Anzahl) To UBound(Anzahl))
For Nummer = LBound(Anzahl) To UBound(Anzahl)
GesamtGewicht1 = GesamtGewicht1 + Anzahl(Nummer) * Gewicht(Nummer)
Next Nummer
'Berechnung mit Excel-Funktion:
GesamtGewicht2 = WorksheetFunction.SumProduct(Anzahl, Gewicht)
'Ergebnisse:
Debug.Print GesamtGewicht1, GesamtGewicht2,
End Sub
Bin nur zwecksskeptisch: Gibt es Gründe, die WorksheetFunction zu verwenden oder nicht zu verwenden? Wird dabei vielleicht die Formelberechnung in den Arbeitsblättern angestossen?
Oder ist es egal?
LG, Flo
Anzeige