带标准的Excel VBA产品

带标准的Excel VBA产品,vba,excel,Vba,Excel,需要将此Excel函数写入宏的帮助,请提供帮助 A1=7 B1=1 C1=4 A2=8 B2=2 C2=5 A3=9 B3=3 C3=6 如果A1=A1(7),答案将等于B1*C1=1*4=4 如果A1=A2(8),答案将等于B2*C2=2*5=10 该函数在excel单元格中运行良好 SUMPRODUCT((A1:A3=A1)+0,B1:B3,C1:C3) 但是,vba不起作用 With Worksheets("Sumproduct") .Range("D1&q

需要将此Excel函数写入宏的帮助,请提供帮助

A1=7 B1=1 C1=4

A2=8 B2=2 C2=5

A3=9 B3=3 C3=6

如果A1=A1(7),答案将等于B1*C1=1*4=4

如果A1=A2(8),答案将等于B2*C2=2*5=10

该函数在excel单元格中运行良好

SUMPRODUCT((A1:A3=A1)+0,B1:B3,C1:C3)
但是,vba不起作用

With Worksheets("Sumproduct")
.Range("D1").Value = Application.WorksheetFunction.SumProduct((.Range("A1:A3" = A1)+ 0 , .Range("B1:B3"), .Range("C1:C3"))`

您是要将函数放入单元格还是函数的结果?在
.Range(“A1:A3”
try
.Range(“D1”).Value=Application.WorksheetFunction.SumProduct(.Range(“A1:A3”)=A1)+0、.Range(“B1:B3”)、.Range(“C1:C3”)之后缺少一个
。我不理解公式中的
+0
,您可能不需要它。但是您也可以使用
.Range(“D1”).Value=Evaluate(“SUMPRODUCT((A1:A3=A1)+0,B1:B3,C1:C3)”)
范围(“D1”).Value=.Evaluate(“SUMPRODUCT((A1:A3=A1)+0,B1:B3,C1:C3)”)
(A1:A3=A1)=True,False,False,+0将使True/False等于1和0,并导致{1,0,0}{1,2,3}*{4,5,6}=(a1b1*C1)+(A2*B2*C2)+(A3*B3*C3)=(1*1*4)+(0*2*5)+(0*3*6)=4您是要将函数放入单元格中,还是函数的结果?在
范围(“A1:A3”
后缺少一个
范围(“A1:A3”
尝试
范围(“D1”).Value=Application.WorksheetFunction.SumProduct(.Range(“A1:A3”)=A1)+0.Range(“B1:B3”),.Range(“C1:C3”))
。我不理解公式中的
+0
,您可能不需要它。但是您也可以使用
.Range(“D1”).Value=Evaluate(“SumProduct((A1:A3=A1)+0,B1:B3,C1:C3)”)
.Range(“D1”).Value=.Evaluate(“SUMPRODUCT((A1:A3=A1)+0,B1:B3,C1:C3)”(A1:A3=A1)=True,False,False,+0将使True/False等于1和0,并导致{1,0,0,0}{1,2,3}*{4,5,6}=(a1b1*C1)+(A2*B2*C2)+(A3*C3)=(1*1*4)+(0*2*5)+(0*3*6)=4