为BeforeDoubleClick设置范围

时间:2014-06-06 18:28:22

标签: excel vba excel-vba

我正在尝试为从B:27到B:x(任意行数)的一系列单元格添加DoubleClick事件。所以我想从第27行开始限制只有列'B'

当点击定义范围内的任何单元格时,我将更新另一个单元格中的Target.Value并调用子例程。

当前代码如下所示。这是来自以前的开发人员,它可以在其中一个工作表中工作,但现在我在另一个工作表上创建了一个类似的报告,它给了我错误

Method 'Range' of object '_Worksheet' failed.

我不确定定义"DblClikRange"范围的位置,我查看了模块代码以及我在整个VBA代码中搜索的单词,我找不到它。

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean)
   If Not Intersect(Target, Range("DblClikRange")) Is Nothing Then
     On Error Resume Next

     Range("B22") = Target.Value

    ' call the sub to load data
      Call MyDemo
   End If
End Sub

知道在哪里查找这个命名范围变量或者如何以不同的方式执行此操作?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

如果您不想使用命名范围,则可以在代码中明确定义单元格:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, Range("B:B")) Is Nothing Then
         If Target.Row => 27 Then
             Range("B22") = Target.Value
             ' call the sub to load data
             Call MyDemo
         End If
    End If
End Sub

这实际上取决于你最熟悉的东西 - 似乎你不习惯使用命名范围,所以只需使用上面的代码。

相关问题