【问题标题】:Returning a range from an Offset from another range VBA从另一个范围VBA的偏移量返回一个范围
【发布时间】:2014-09-29 06:19:10
【问题描述】:

如何从包含另一个范围的偏移量的函数中返回一个范围?

这是我的代码(函数):

Private Function ProcessRange(rng) As Range
    If rng <> "A1" Then
        ProcessRange = Range(rng).Offset(r + 2)  //this is the problem
    Else
        ProcessRange = Range("A1")
    End If
End Function

从上面的示例中,我尝试替换偏移函数的范围。有可能吗?

【问题讨论】:

  • 你在用你的代码做什么?你知道函数和变量吗?
  • 我试图为rng传递的参数只是一个字符串,A1,B2等

标签: vb.net excel vba basic


【解决方案1】:

这里有几个问题:

  • 您应该定义参数的类型
  • 使用Set设置返回范围
  • 你还没有定义 r 是什么
  • Offset需要rows和columns两个参数
  • 由于您尚未指定工作表,因此您的函数将返回活动工作表上的范围

.

Private Function ProcessRange(rng As String) As Range
    If rng <> "A1" Then
        Set ProcessRange = Range(rng).Offset(2, 0) ' To Offset by 2 rows
    Else
        Set ProcessRange = Range("A1")
    End If
End Function

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-18
    • 1970-01-01
    • 2020-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-26
    相关资源
    最近更新 更多