【问题标题】:Excel VBA - User Defined Function - Variable size parametersExcel VBA - 用户定义函数 - 可变大小参数
【发布时间】:2014-11-25 00:34:17
【问题描述】:

我正在尝试创建一个用户定义的函数来计算真实库存周数。该函数只有两个输入参数:总库存和每周预测数据。每周预测数据将排列成一行,用户可以选择输入。我希望它像 SUM 函数一样工作,用户可以用鼠标选择范围的参数大小,或者在输入过程中手动键入。我不知道如何做到这一点。一旦我在 UDF 中拥有数据,我就知道我想对它做什么,但我正在努力研究如何实际摄取我需要的数据。谁能指出我正确的方向?

【问题讨论】:

    标签: vba excel user-defined-functions


    【解决方案1】:

    一个粗略的例子,但是在标准代码模块中放置这样的东西:

    Public Function SumMyData(rngToSum As Range) As Double
    
    Dim weeksOfCover As Double
    
    weeksOfCover = 10.54
    
     SumMyData = WorksheetFunction.Sum(rngToSum) * weeksOfCover
    
    End Function
    

    然后在你的工作簿中,使用=SumMyData(C3:C20)

    【讨论】:

    • 感谢您的帮助。如果我想单独处理范围内的每个单元格而不是总和怎么办?有没有办法将范围内的每个单元格加载到数组中?
    • 您可以在 UDF 代码中使用 For Each 循环,例如Dim rCell As Range : For Each rCell In rngToSum : '// Do Something : Next rCell
    猜你喜欢
    • 2015-08-12
    • 1970-01-01
    • 2018-02-14
    • 2011-02-06
    • 1970-01-01
    • 2013-08-13
    • 1970-01-01
    • 2017-03-04
    • 1970-01-01
    相关资源
    最近更新 更多