Excel Vba中 如何判断活动单元格是否在指定区域?如指定Range(A1:B2),activ

ExcelVba中如何判断活动单元格是否在指定区域?如指定Range(A1:B2),activecell为A2时返回TRUE,activecell为A5则返回FALSE请... Excel Vba中 如何判断活动单元格是否在指定区域?如指定Range(A1:B2),activecell为A2时返回TRUE,activecell为A5则返回FALSE

请问用什么函数判断?
展开
 我来答
表里如一
推荐于2017-09-18 · 知道合伙人软件行家
表里如一
知道合伙人软件行家
采纳数:2066 获赞数:11637
从事6年生产管理,期间开发了多款小软件进行数据处理和分析,后

向TA提问 私信TA
展开全部

这个其实很简单。用activecell.address方法取得活动单元格的地址,然后判断地址是否在这个区域中就好。

给你代码:

Sub aa()
    Set Rng = Range("A1:B2")
    Dim Addr As String
    For Each c In Rng.Cells
        Addr = Addr & c.Address & ","
    Next
    If InStr(Addr, ActiveCell.Address) > 0 Then
        MsgBox "活动单元格在单元格区域" & Rng.Address & "内!"
    Else
        MsgBox "活动单元格不在单元格区域" & Rng.Address & "内!"
    End If
End Sub
追问
你这个方法也很巧妙。我后来是用intersect函数判断两者是否存在交集实现的
追答
intersect也很好。呵呵,比我的办法要好一些。因为是内置的。
还有一种方法,是判断当前单元格的列号与行号是否在区域的列号行号内。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式