搜索
查看: 146|回复: 0

隐藏工作表VBA

[复制链接]

977

主题

1093

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
15934
发表于 2024-2-10 19:53:40 | 显示全部楼层 |阅读模式
Sub HideWorksheetsByPrefix()
    Dim ws As Worksheet
    Dim prefix As String
    Dim found As Boolean
      
    ' 弹出输入框让用户输入要隐藏的工作表名称前缀
    prefix = InputBox("请输入要隐藏的工作表名称前缀:", "隐藏工作表")
      
    ' 检查用户是否输入了前缀
    If prefix = "" Then
        MsgBox "您没有输入任何前缀,操作已取消。", vbExclamation
        Exit Sub
    End If
      
    ' 循环遍历所有工作表
    For Each ws In ThisWorkbook.Worksheets
        ' 检查工作表名称是否以指定前缀开头
        If Left(ws.Name, Len(prefix)) = prefix Then
            ' 隐藏匹配的工作表
            ws.Visible = xlSheetVeryHidden ' 使用xlSheetVeryHidden将工作表设置为非常隐藏,这样它就不会出现在“取消隐藏”对话框中
            found = True ' 标记至少找到了一个匹配的工作表
        End If
    Next ws
      
    ' 如果没有找到任何匹配的工作表,则通知用户
    If Not found Then
        MsgBox "没有找到以 '" & prefix & "' 开头的工作表。", vbInformation
    Else
        MsgBox "以 '" & prefix & "' 开头的工作表已被隐藏。", vbInformation
    End If
End Sub
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

表格智创网

网站简介:表格智创网,是一家以表格设计和技能分享的专业社区,由会计帮帮网投资建设,尽专业,助提高专业技能。

表格智创网欢迎您!

联系我们

  • 工作时间:早上9:00-16:00
  • 客服电话:18668755857
  • 本站网址:www.excelwps.com
  • 淘宝店址:kjbbw.taobao.com

Powered by Discuz! X3.4 © 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表