另一张纸上的产品

时间:2015-07-11 14:07:09

标签: vba excel-vba excel

我是vba的新手,我想知道如何在excel上实现一个公式(sumproduct)到vba。该公式从工作簿上的其他工作表中获取值。公式是:

=((SUMPRODUCT(-(Details!$C$7:$C$1182=A3),-(Details!$E$7:$E$1182=B3), -(Details!$S$7:$S$1182="Delivered"), -(Details!$G$7:$G$1182=C3), Details!$N$7:$N$1182)))

这是我的代码;

Private Sub ATO()

Dim ws1 As Worksheet
Dim wb1 As Workbook
Dim last As Long
Dim i As Integer

Set wb1 = ThisWorkbook
Set ws1 = wb1.Worksheets("Summary")

last = ws1.Cells(Rows.Count, "A").End(xlUp).Row

ws1.Range("I2:I" & last) = Application.SumProduct(?)

End Sub

我的代码是否在正确的轨道上?任何回应都将不胜感激。

1 个答案:

答案 0 :(得分:0)

是的,你是在正确的轨道上但是如果你在vba中调用excel函数你应该使用Application.WorksheetFunction 例如针对您的问题Application.WorksheetFunction.sumif() 有一个例外,请记住,如果vba中存在相同的函数,则不能将excel版本与WorksheetFunction一起使用。因此,如果您在工作表函数中找不到函数,则在没有它的情况下尝试它。 祝好运!如果某些内容无法发挥作用,我将尽力提供帮助!