有時要在Excel中篩選加粗的文字,雖然Excel沒有提供直接的方法,但可以先通過輔助列來確定單元格內容是否加粗,然后再對輔助列進行篩選,從而間接地篩選出加粗的文字。判斷單元格文字是否加粗可以用GET.CELL函數或自定義函數來進行。下面以篩選圖中A1:A16區域的加粗文字為例,介紹在Excel 2010中的操作方法:
方法一、輔助列+ 定義名稱
用GET.CELL函數可以判斷單元格格式,如加粗、傾斜、下劃線等,但該函數只能用于定義的名稱中。
1.選擇B2單元格,按快捷鍵Ctrl+F3,打開“定義名稱”對話框(Excel 2003)或“名稱管理器”(Excel 2007/2010)。如果是Excel 2007/2010,單擊“名稱管理器”中的“新建”按鈕,打開“新建名稱”對話框。
在“名稱”后輸入一個名稱,如“cuti”,在“引用位置”后的文本框中輸入公式:
=GET.CELL(20,A2)&T(NOW())
GET.CELL函數的第一個參數為“20”,用于判斷指定的單元格是否為粗體。后面加上“T(NOW())”,是為了當工作表中的任意單元格進行計算時(或按F9鍵),該函數也能重新計算。單擊“確定”,然后關閉“名稱管理器”。
2.在B2單元格中輸入公式:
=cuti
然后拖動填充柄將公式填充到B3:B16區域,如果A列文字為粗體,則公式返回TRUE。
3.篩選B列為TRUE的單元格,即可篩選出A列中的粗體文字。
方法二、輔助列+自定義函數
1.按Alt +F11,打開VBA編輯器,單擊菜單“插入→模塊”,在代碼窗口中輸入下面的代碼:
Function Bold(rCell As Range)
Application.Volatile
Bold = rCell.Font.Bold
End Function
Application.Volatile方法將該自定義函數標記為易失性函數,這樣當工作表中的任意單元格進行計算(或按F9鍵)時,該函數也將重新計算。
2.關閉VBA編輯器,返回到Excel界面。在B2單元格中輸入公式:
=bold(A2)
然后拖動填充柄,將公式填充到B3:B16區域。如果A列文字為粗體,則公式返回TRUE。
3.篩選B列。
注意:如果公式輸入完畢后,對A列中的某些單元格進行了加粗或取消加粗操作,上述兩種方法中的公式不會立即自動刷新,這時按F9鍵刷新即可