Jak używać sumproduct w vba (z przykładem)


Aby używać SUMPRODUCT w VBA, możesz użyć następującej podstawowej składni:

 SubSumProduct ()
Range(" E2 ") = WorksheetFunction.SumProduct(Range(" B2:B11 "), Range(" C2:C11 "))
End Sub

Ten konkretny przykład obliczy sumę iloczynu wartości z zakresów B2:B11 i C2:C11 i zwróci wynik w komórce E2 .

Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.

Przykład: Jak używać SUMPRODUCT w VBA

Załóżmy, że mamy następujący zbiór danych zawierający informacje o sprzedaży różnych owoców w sklepie spożywczym:

Załóżmy, że chcemy obliczyć całkowity przychód sklepu, mnożąc cenę przez liczbę jednostek, a następnie obliczając sumę.

Możemy w tym celu skorzystać z metody VBA SumProduct :

 SubSumProduct ()
Range(" E2 ") = WorksheetFunction.SumProduct(Range(" B2:B11 "), Range(" C2:C11 "))
End Sub

Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:

Suma iloczynu wartości pomiędzy zakresami B2:B11 i C2:C11 wynosi 139 .

Wartość ta wyświetlana jest w komórce E2 , tak jak określiliśmy w makrze.

Możemy sprawdzić, czy jest to prawidłowe, ręcznie obliczając sumę iloczynów pomiędzy dwoma zakresami:

Suma iloczynów: (4*1) + (3*5) + (3*4) + (2*7) + (2*3) + (5*5) + (3*5) + (2*6 ) + (5*6) + (2*3) = 139 .

Odpowiada to wartości obliczonej metodą VBA SumProduct .

Uwaga : Pełną dokumentację metody VBA SumProduct można znaleźć tutaj .

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w VBA:

VBA: Jak dodać wartości w zakresie
VBA: Jak obliczyć średnią wartość zakresu
VBA: Jak policzyć liczbę wierszy w zakresie

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *