首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >BeforeDoubleClick和Intersect

BeforeDoubleClick和Intersect
EN

Stack Overflow用户
提问于 2018-03-21 08:20:42
回答 1查看 461关注 0票数 2

我快疯了:

我在我的工作表2中有这段代码,它工作得很好(代码见图):

代码语言:javascript
复制
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If Not Intersect(Target, Range("A5:D150")) Is Nothing Then Cancel = True
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("A6:D150")) Is Nothing Then Exit Sub
    On Error GoTo ExitPoint
    Application.EnableEvents = False
    If Not IsDate(Target(1)) Then
        Application.Undo
        MsgBox " You can't delete cell content :)" _
        , vbCritical, "Sara"
    End If
ExitPoint:
    Application.EnableEvents = True
End Sub

现在我有了一个Excel工作表,它是单元格A:AC。

我希望这个公式应用于A:D,skip E,应用于F:V,skip W:Z,应用于AA:AC

如何将这些代码实现到多个范围?

我尝试了很多方法,但都失败了。我真的很感谢大家的帮助和反馈。

EN

回答 1

Stack Overflow用户

发布于 2018-03-21 08:51:52

您可以尝试使用Union。类似于:

代码语言:javascript
复制
Dim r As Range
Set r = Union(Range("A6:D150"),Range("F6:V150"),Range("AA6:AC150"))

If Intersect(Target, r) Is Nothing Then
'rest of your code

或者您可以直接使用非连续范围表示法:

代码语言:javascript
复制
If Intersect(Target, Range("A6:D150,F6:V150,AA6:AC150")) Is Nothing Then
'rest of your code
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49396218

复制
相关文章

相似问题

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