首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在另一张纸中显示隐藏列

在另一张纸中显示隐藏列
EN

Stack Overflow用户
提问于 2015-08-20 10:31:02
回答 1查看 1.2K关注 0票数 2

我很难找到如何用VBA在另一张表中“显示”隐藏列,我目前正在研究VBA,我想为每一种情况都有一个隐藏/取消隐藏的代码,但是这个没有。有什么建议吗?

我的(更新的)代码在这里:

代码语言:javascript
运行
复制
Private Sub CommandButton1_Click()

    'To Hide Sheet 2
    Worksheets("Sheet2").Visible = False

    'To Hide Rows 22 to 25
    Rows("22:25").EntireRow.Hidden = True

    'To Hide Columns E to G
    Columns(":G").EntireColumn.Hidden = True

    'More specific hidding (inside a different sheet)
    Worksheets("Sheet3").Columns("A:G").EntireColumn.Hidden = True

End Sub

Public Sub UnHideAll()

    Dim ws As Worksheet
    For Each ws In ActiveWorkbook.Worksheets
        ws.Visible = xlSheetVisible
        Rows.Hidden = False
        Columns.Hidden = False
    Next ws

End Sub

Private Sub CommandButton2_Click()
    UnHideAll
End Sub
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-20 10:36:11

试一试

代码语言:javascript
运行
复制
Sub UnHideAll()
    Dim ws As Worksheet
    For Each ws In ActiveWorkbook.Worksheets
        ws.Visible = xlSheetVisible
        ws.Rows.Hidden = False
        ws.Columns.Hidden = False
    Next ws
End Sub

代码的要点是,如果希望RowsColumns引用活动工作表以外的任何内容,则需要通过工作表对它们进行限定。用ws.作为前缀让VBA知道行和列在什么表上。然后在按钮的代码中,只需:

代码语言:javascript
运行
复制
Private Sub CommandButton1_Click()
    UnHideAll
End Sub

我已经多次使用手动列、行和工作表来测试它,以及在VBA进行隐藏时,它似乎工作得很好。

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

https://stackoverflow.com/questions/32115826

复制
相关文章

相似问题

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