Как использовать суммпроизв в vba (с примером)
Для использования СУММПРОИЗВ в VBA можно использовать следующий базовый синтаксис:
SubSumProduct ()
Range(" E2 ") = WorksheetFunction.SumProduct(Range(" B2:B11 "), Range(" C2:C11 "))
End Sub
В этом конкретном примере будет рассчитана сумма произведения значений в диапазонах B2:B11 и C2:C11 и возвращен результат в ячейку E2 .
В следующем примере показано, как использовать этот синтаксис на практике.
Пример: как использовать СУММПРОИЗВ в 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: как подсчитать количество строк в диапазоне