一、使用VBA批量取消隱藏工作表
隱藏工作表和取消隱藏工作表是經常使用到的操作。在進行隱藏的時候,可以按住Ctrl鍵同時隱藏多個工作表,但是如果需要顯示的話,只能一個一個進行設置。今天就來介紹一下如何使用VBA來批量取消隱藏工作表。
現在有一個工作簿,裡面有10個工作表Sheet1-Sheet10,現在將奇數項的工作表隱藏起來。
全部取消隱藏
VBA代碼如下:
Sub UnhideWorksheets() Dim i As Worksheet For Each i In Worksheets i.Visible = xlSheetVisible Next End Sub
點擊運行之後,全部隱藏的工作表就會顯示出來了。
取消部分隱藏
如果需要取消部分工作表的隱藏,上面那個方法就不奏效了。下面來介紹一下新的方法。在VBA中建了一個用戶窗體,插入十個複選框,分別命名為十個工作表名稱,另外還插入了一個按鈕。
按鈕代碼如下:
Private Sub CommandButton1_Click() Dim i As Integer For i = 1 To 10 If Controls("CheckBox" & i).Value = True Then Sheets(i).Visible = xlSheetVisible End If Next i End Sub
點擊運行以後,會彈出窗體。在這裡勾選上需要顯示的工作表,點擊按鈕,工作表就會顯示了。
在實際使用的時候需要將複選框與工作表名稱進行一一對應,然後才能關聯起來,有興趣的小夥伴可以自行進行擴展使用。
二、在Excel中製作一個華夫餅圖來顯示工作完成進度
如圖,現在在工作表Sheet2的單元格里面記錄了這樣一個工作目標以及完成進度。
1.新建一個工作表Sheet3,在A1單元格里面輸入:=Sheet2!$C$2,也就是將這個單元格與表示完成進度百分比單元格關聯起來。
2.選擇一個10*10的單元格區域,調整行高和列寬,使單元格看上去是正方形。
3.從下往上,從左到右,輸入1%-100%的數字,如圖所示。
4.給這部分區域設置一個白色的所有框線。
5.全選這部分區域,點擊“條件格式”。
6.在下拉菜單裡面選擇“新建規則”。
7.在新建規則中,選擇“只為包含以下內容的單元格設置格式”。
8.選擇單元格值“小於或等於”。
9.文本框內使用鼠標選擇單元格A1就可以了。
10.然後點擊“格式”按鈕,給“字體”和“填充”設置好一個相同的顏色。
11.然後分別在窗口點擊“確定”回到工作表。
這時,小於A1的那部分單元格或填充上顏色。這裡顯示的41%,顯示兩位小數其實是40.65%,因此填充的時候41%這一格還是沒有被填充上顏色的。
12.再一次全選這部分區域,設置另外一個字體顏色和背景填充色。在這裡選了一個橙色,表中,藍色表示已完成進度,橙色表示未完成。
13.選中這個區域,按Ctrl+C進行復制。
14.來到工作表Sheet2,也就是原數據在的工作表,點擊“粘貼”的下拉菜單。選擇“鏈接的圖片”。
這樣一來就設置好了,可以將Sheet3給隱藏起來。之後當進度變化的時候,在這個華夫餅圖上邊的色塊也就會相應進行改變。