用vba隐藏或显示工作表是工作表对象的Visible属性控制的。
当Visible属性的值为xlSheetHidden时隐藏工作表(可以用右键取消隐藏来显示),当值为xlSheetVeryHidden时为深度隐藏工作表(无法用右键取消隐藏来显示),当值为xlSheetVisible时为取消隐藏工作表。
当拿到一个excel文件,里面有很多工作表隐藏了,需要取消隐藏时,可以使用如下的vba代码:
Sub 批量取消隐藏工作表() 'QQ:1722187970,微信:xycgenius,公众号:水星excel Dim oWK As Worksheet Dim oWB As Workbook Set oWB = Excel.ActiveWorkbook For Each oWK In oWB.Worksheets oWK.Visible = xlSheetVisible Next End Sub
当要对一个excel文件内的多个工作表进行批量隐藏时,需要注意的是由于每个工作簿至少需要显示1个工作表,所以没有办法隐藏所有的工作表。
以下是批量隐藏工作表的vba代码:
Sub 批量隐藏工作表() 'QQ:1722187970,微信:xycgenius,公众号:水星excel Dim oWK As Worksheet Dim oWB As Workbook Set oWB = Excel.ActiveWorkbook For Each oWK In oWB.Worksheets '至少要显示1个工作表 If oWK.Name = "Sheet1" Then oWK.Visible = xlSheetVisible Else oWK.Visible = xlSheetHidden End If Next End Sub Sub 批量深度隐藏工作表() 'QQ:1722187970,微信:xycgenius,公众号:水星excel Dim oWK As Worksheet Dim oWB As Workbook Set oWB = Excel.ActiveWorkbook For Each oWK In oWB.Worksheets '至少要显示1个工作表 If oWK.Name = "Sheet1" Then oWK.Visible = xlSheetVisible Else oWK.Visible = xlSheetVeryHidden End If Next End Sub
发表评论