从偏移量创建范围

时间:2016-09-03 12:42:36

标签: excel vba excel-vba

我需要选择与某个细胞相关的范围。

这是我到目前为止 - 用户双击一个单元格:

Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

用户点击的单元格随后在Target中以Range的形式提供。

然后,我需要选择相对于Range位置的新Target。我尝试过以下代码:

dataSheet.Range(Target.Offset(2, 2)), Target.Offset(15, bHeight)).Select

我尝试了很多不同的方法,使用.Cells.Address阅读其他人的帖子,但似乎无法让它发挥作用。我想我的数据类型混淆了吗?任何想法?

1 个答案:

答案 0 :(得分:2)

您可以合并OffsetResize来实现目标。首先使用OffsetTarget然后Resize获取置换,以将范围增加到所需的行数和列数。以下是示例代码:

Option Explicit

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

    Dim rngNew As Range
    Dim bHeight As Integer

    bHeight = 3
    Set rngNew = Target.Offset(2, 2).Resize(13, bHeight)

    rngNew.Select

End Sub