首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >根据命名的单元格范围值隐藏行?

根据命名的单元格范围值隐藏行?
EN

Stack Overflow用户
提问于 2013-03-25 08:21:17
回答 1查看 2.2K关注 0票数 0

我希望创建一个宏,该宏查看命名单元格范围的值,并根据该命名单元格中的值隐藏/取消隐藏单元格。我有一个数据验证列表,可以选择(a)是和(b)否,如果用户选择命名的单元格“选择”(单元格"A1"),那么(a)是的,那么行5-10必须隐藏,否则它们必须是隐藏的。宏不需要查看整个单元格值,在"(a)是“中,必须只查看"(a)”。

到目前为止,这是我的代码,但是它会产生一个错误,即

对象变量或块变量未设置

代码语言:javascript
运行
复制
Private Sub Worksheet_Change(ByVal Target As Range)

Dim Cell As Range

Cell = Range("Select")

If Target.Address = Cell Then
    Select Case Left$(Cell.Value, 3)
        Case "(a)"
            Rows("5:10").Hidden = True
    End Select
Else 
    Rows ("5:10").Hidden = False
End If
End Sub

一个人会怎么做这样的事?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-03-25 09:17:44

更改以下内容:

代码语言:javascript
运行
复制
Cell = Range("Select")

转入:

代码语言:javascript
运行
复制
Set Cell = Range("Select")

此外,如果进行比较,您不会得到预期的结果:

代码语言:javascript
运行
复制
Target.Address = Cell

永远不会实现的目标。尝试以下几点:

代码语言:javascript
运行
复制
Target.Address = Cell.Address

还有一个建议。您可以将ifselect条件合并为一个:

代码语言:javascript
运行
复制
If Target.Address = Cell.Address And Left$(Cell.Value, 3) = "(a)" Then

最后,请记住"(a)“<> "(A)”由于VBA中的大小写敏感性。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15610396

复制
相关文章

相似问题

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