Як використовувати sumproduct у vba (з прикладом)


Ви можете використовувати такий базовий синтаксис, щоб використовувати SUMPRODUCT у VBA:

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

Цей конкретний приклад обчислить суму добутку значень у діапазонах B2:B11 і C2:C11 і поверне результат у клітинку E2 .

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: як використовувати SUMPRODUCT у VBA

Припустимо, що ми маємо наступний набір даних, що містить інформацію про продаж різних фруктів у продуктовому магазині:

Припустімо, ми хочемо обчислити загальний дохід магазину, помноживши ціну на кількість одиниць, а потім взявши суму.

Для цього ми можемо використати метод VBA SumProduct :

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

Коли ми запускаємо цей макрос, ми отримуємо такий результат:

Сума добутку значень між діапазонами B2:B11 і C2:C11 дорівнює 139 .

Це значення відображається в клітинці E2 , як ми вказали в макросі.

Ми можемо переконатися, що це правильно, обчисливши вручну суму добутків між двома діапазонами:

Сума добутків: (4*1) + (3*5) + (3*4) + (2*7) + (2*3) + (5*5) + (3*5) + (2*6) ) + (5*6) + (2*3) = 139 .

Це відповідає значенню, обчисленому методом VBA SumProduct .

Примітка . Ви можете знайти повну документацію для методу VBA SumProduct тут .

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:

VBA: Як додати значення в діапазон
VBA: як обчислити середнє значення діапазону
VBA: як підрахувати кількість рядків у діапазоні

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *