首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将一系列单元格从excel传递到vba中的函数中

将一系列单元格从excel传递到vba中的函数中
EN

Stack Overflow用户
提问于 2011-12-29 07:46:19
回答 1查看 6.9K关注 0票数 0

我正在尝试创建一个函数,以便=processCells(A1:A10)将接受单元格的范围,并允许我将10加到每一项上,并在单元格A11:A20中显示新的数字。我想使用工作表中的函数,这样用户就可以手动选择单元格A1:A10,这样他们就可以选择B1:B10等。代替A1:A10

我的问题是将工作表的单元格范围传递给一个函数,然后处理它们。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-12-29 08:14:43

下面是一个示例UDF,可以帮助您入门

代码语言:javascript
复制
Function processCells(rng As Variant, Optional AddValue = 10) As Variant
    Dim v As Variant
    Dim i As Long, j As Long
    Select Case TypeName(Application.Caller)
        Case "Range"
            ' Called from a Formula
            v = rng
            If IsArray(v) Then
                ' Called from an Array Formula
                For j = 1 To UBound(v, 1)
                For i = 1 To UBound(v, 2)
                    If IsNumeric(v(j, i)) Then
                        v(j, i) = v(j, i) + AddValue
                    End If
                Next i, j
            Else
                ' Called from a single Cell
                If IsNumeric(v) Then
                    v = v + AddValue
                End If
            End If
            processCells = v
        Case Else
            processCells = vbEmpty
    End Select
End Function

要按照您所描述的方式使用它,请在单元格单元格A11:A20中将其作为数组公式=processCells(A1:A10)输入

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8662569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档