Vba 如何使用其他两个范围变量设置范围变量?

Vba 如何使用其他两个范围变量设置范围变量?,vba,excel,Vba,Excel,在Excel宏中,我有两个范围数据类型变量 RangeStrt带有值sayRange(“A1”) RangeEnd带有值sayRange(“C10”) 我需要第三个范围变量DataRng,它将存储从开始到结束的范围(即Range(“A1:C10”)) 还有什么我可以做的吗?使用 Set dataRng = Range(RangeStrt, RangeEnd) @user3598756在上面的回答中给出了如何设置范围的技术方面 我还建议(如果您还不熟悉)使用这些范围所在的相关工作表完全限定您

在Excel宏中,我有两个范围数据类型变量

  • RangeStrt
    带有值say
    Range(“A1”)
  • RangeEnd
    带有值say
    Range(“C10”)
我需要第三个范围变量
DataRng
,它将存储从开始到结束的范围(即
Range(“A1:C10”)

还有什么我可以做的吗?

使用

Set dataRng = Range(RangeStrt, RangeEnd)

@user3598756在上面的回答中给出了如何设置
范围的技术方面

我还建议(如果您还不熟悉)使用这些范围所在的相关工作表完全限定您的
范围

因此,在设置范围之前,您应该使用工作表(“YourSheetName”)添加
,在
With
语句中,通过在前面添加
来限定
范围

代码

Option Explicit

Sub DefineCombinedRange()

Dim RangeStrt As Range
Dim RangeEnd  As Range
Dim DataRng  As Range

' add With statement to fully qualify your Ranges
With Worksheets("Sheet1") '<-- modify "Sheet1" with your sheet's name (where you have your ranges)
    Set RangeStrt = .Range("A1")
    Set RangeEnd = .Range("C10")

    Set DataRng = Range(RangeStrt, RangeEnd) '<-- setting the 3rd range, using the first 2 Ranges

    ' the line below is for debug
    Debug.Print DataRng.Address
End With

End Sub
选项显式
子定义组合范围()
变暗范围作为范围
变暗范围结束为范围
Dim DataRng As范围
'添加With语句以完全限定您的范围

使用工作表(“Sheet1”)以及@user3598756答案(这是可以的),您还可以使用:

Range(Cells(1,1), Cells(10,3)).Select
就我个人而言,我预选了这个,因为你可以更容易地在单元格公式中使用一些索引