0
我有许多产品的数据图表。将公式的值赋给单元格
我想筛选每种类型的产品,计算该类型的总数量以及该类型内的产品数量。最后将该函数的值放入第2页的一列中。
这是代码。的数量列列U.它得到错误1004:参数不可选,它凸显了集... = = FunctionR1C1部分....
Function T_Quantity()
ActiveSheet.Range("U").Select
Total = FunctionR1C1 = "=subtotal(9,C[0])"
End Function
Function T_Count(ref_column)
ActiveSheet.Range("U").Select
Total = FunctionR1C1 = "=subtotal(2,C[0])"
End Function
Sub Total_Count()
Dim my_array() As String
Dim iLoop As Integer
Dim iCount As Integer
iCount = 1
ReDim my_array(3)
my_array(0) = "=M1747B"
my_array(1) = "=M1747C"
my_array(2) = "=M1766B"
For iLoop = LBound(my_array) To UBound(my_array)
ActiveSheet.Range("A:BB").Select
Selection.AutoFilter Field:=15, Criteria1:=my_array
Application.CutCopyMode = False
'Calculate the quantity and no of lot, put in colum A,B in sheet 2'
Set Worksheets("Sheet2").Cells(iCount, 1) = T_Quantity()
Set Worksheets("Sheet2").Cells(iCount, 2) = T_Count()
Application.CutCopyMode = False
iCount = iCount + 1
Next iLoop
End Sub
你没有传递任何参数给函数;你的函数没有返回任何值,因此,当你可以/应该使用'Sub'时,你正在使用一个函数。此外,'Total = FunctionR1C1 =“= subtotal(9,C [0])”'是无意义的,它是一个布尔表达式(最好),它将只返回一个'True'或'False'。 –
是的,我是一个begginer,所以我的知识有点有限:“>但是我认为当你需要返回一个值,那么你需要使用一个子函数insted另外一件事,我不知道分配公式也可以,你可以为我改写函数,我只是想把函数的“值”赋值给一个变量或者传递给一个单元格THANKs –
是和否你应该使用函数* calculate *和如果你只是简单地操纵工作表对象 - 你正在做的事情 - 这可能是你现有的子程序的一部分,或者它可能是另一个子程序,我会试着给你一个建议。 –