應(yīng)用場(chǎng)景:返回主頁(yè)面,顯示某一個(gè)工作表,其余工作表均隱藏,即始終只顯示一個(gè)工作表。 以下代碼顯示或者說(shuō)是回到名稱為“Main“的工作表,可以把它放到一個(gè)命令按鈕里: '代碼基本邏輯:首先,我們把要顯示的工作表激活并顯示出來(lái),把它的名稱存在 '一個(gè)變量(curSht)中,然后對(duì)所有工作表名稱進(jìn)行循環(huán)比對(duì),把名稱不同于 'curSht的所有工作表給它深度隱藏。注意:深度隱藏(xlSheetVeryHidden)后, '用鼠標(biāo)右鍵不能取消隱藏。而xlSheetHidden則可以用鼠標(biāo)右鍵取消隱藏,詳見 '代碼。
Sub BackTo() Dim Sht As Worksheet Dim curSht As String On Error Resume Next Sheets("Main").Activate ActiveSheet.Visible = xlSheetVisible '顯示工作表 curSht = ActiveSheet.Name '遍歷所有工作表,隱藏不需要顯示的工作表 For Each Sht In Excel.ThisWorkbook.Worksheets If Sht.Name <> curSht Then '設(shè)置工作表對(duì)象的Visible屬性 'Sht.Visible = xlSheetHidden Sht.Visible = xlSheetVeryHidden End If Next End Sub
或者放在某一個(gè)模塊里,在命令按鈕里調(diào)用: 隱藏其他工作表,這個(gè)跟上面的有點(diǎn)類似,可以用在如下場(chǎng)景:除當(dāng)前工作表外,還有其他工作表處于顯示狀態(tài),我現(xiàn)在只要顯示當(dāng)前工作表,其他工作表給我隱藏起來(lái): Sub xHide() Dim Sht As Worksheet Dim curSht As String curSht = ActiveSheet.Name ActiveSheet.Visible = xlSheetVisible For Each Sht In Excel.ThisWorkbook.Worksheets If Sht.Name <> curSht Then Sht.Visible = xlSheetVeryHidden End If Next End Sub
顯示所有工作表: See you next time!
|