完美Excel公眾號:excelperfect
Excel中的條件格式功能是一項十分強大且便利的功能。使用條件格式,可以在很大程度上改進電子表格的設(shè)計和可讀性,允許指定多個條件來確定單元格的行為,根據(jù)單元格的內(nèi)容自動地應(yīng)用單元格的格式。當(dāng)然,可以針對單元格區(qū)域設(shè)定多個條件,但Excel只會應(yīng)用一個條件所對應(yīng)的格式,即按順序測試條件,如果該單元格滿足某條件,則應(yīng)用相應(yīng)的格式規(guī)則,而忽略其他條件測試。
(除特別說明外,以下內(nèi)容采用Excel 2003版本。Excel 2007及以后的版本對條件格式功能作了很多擴充,有興趣的朋友可根據(jù)本文介紹的內(nèi)容在更高版本上進一步擴展)
在使用條件格式時,首先選擇要應(yīng)用條件格式的單元格或單元格區(qū)域,然后單擊菜單“格式─條件格式”,出現(xiàn)如圖1所示的“條件格式”對話框。在Excel 2003及以前的版本中,條件格式最多只能設(shè)置三個條件。
圖1:選擇“單元格數(shù)值”時的條件格式對話框
此時,若在第一個組合框中選擇“單元格數(shù)值”,則右側(cè)的組合框中將提供“介于”、“未介于”、“等于”、“不等于”、“大于”、“小于”、“大于或等于”、“小于或等于”等選項,并且在其右側(cè)的輸入框中可以輸入相應(yīng)的數(shù)值,也可以選擇工作表中的單元格。然后,單擊“格式”按鈕,設(shè)置當(dāng)條件為真時所應(yīng)用的格式。
其中,選擇“介于”時,包括設(shè)置的最大值和最小值,而選擇“未介于”時,不包括設(shè)置的最大值和最小值。
若在第一個組合框中選擇“公式”,則“條件格式”對話框如圖2所示。
圖2:選擇“公式”時的條件格式對話框
此時,可在右側(cè)的輸入框中輸入公式或者選擇含有公式的單元格。注意,公式的值必須返回True或False。當(dāng)公式返回True時,將應(yīng)用條件格式;否則,不會應(yīng)用設(shè)定的格式。這也從另一個側(cè)面可以看出,對Excel公式與函數(shù)掌握的熟練程度,有助于靈活運用條件格式。換句話說,正是由于公式的強大功能,使得條件格式才能發(fā)揮其魅力。
關(guān)于條件格式,請注意下面的幾點:
復(fù)制單元格并將其粘貼到包含條件格式的單元格或者單元格區(qū)域中,將會刪除該單元格或單元格區(qū)域中的條件格式,Excel不會給您任何警告信息。如果非得使用粘貼,并且要保留條件格式,那么可使用“選擇性粘貼”功能。
當(dāng)復(fù)制一個包含條件格式的單元格時,將同時復(fù)制該單元格的條件格式。在包含條件格式的單元格區(qū)域中插入行或者列時,在新的單元格中將有相同的條件格式。
如果要刪除條件格式,僅在含有條件格式的單元格中按Delete鍵,不會刪除條件格式。要刪除條件格式,需要使用“編輯─—清除─—格式”命令或者“編輯─—清除─—全部”命令。還可以使用“條件格式”對話框,刪除其中的條件。
復(fù)制某單元格到含有條件格式的單元格中,也將清除條件格式。
要快速查看所有包含條件格式的單元格,使用Excel的“定位”對話框,單擊“定位條件”按鈕,在“定位條件”中選擇“條件格式”選項,如圖3所示。
圖3:利用“定位條件”中的“條件格式”選項選擇所有包含條件格式的單元格
下面是《Escape From Excel Hell》一書中關(guān)于條件格式的兩個示例,供參考。
示例1:在條件格式中使用公式且公式引用另一個單元格中的內(nèi)容,如圖4所示。
圖4:條件公式中引用另一個單元格中的內(nèi)容
對單元格區(qū)域C6:D20應(yīng)用條件格式,三個條件公式的含義分別為,其左側(cè)B列相應(yīng)單元格的值若大于且等于1,則單元格底紋為粉紅色且字體加粗;若大于0,則單元格底紋為靛藍色;若小于且等于0,則單元格底紋為淺灰色且字體為斜體。
示例2:在條件中使用其他工作表或工作簿中的內(nèi)容在應(yīng)用條件格式時,通常不能直接引用其他工作表或工作簿,但如果為需要引用的單元格區(qū)域定義了名稱,那么可以在條件中通過名稱來引用其他工作表或工作簿中的內(nèi)容。如下圖5所示。
圖5:通過定義名稱,從而在條件格式中引用另一工作表中的數(shù)據(jù)
如圖5,在工作表SearchAnExternalWorksheet中內(nèi)容為“Trans 01”的單元格中應(yīng)用了條件格式,在條件公式中引用了另一個工作表LookupTable中名稱為MyLookupTable的單元格區(qū)域中的內(nèi)容,如果相應(yīng)的收益(損失)值大于1000則該單元格內(nèi)容使用綠底斜體字顯示,若小于-1000則該單元格內(nèi)容使用紅底粗體字顯示。
還有一種方法來引用其他工作表中的單元格。例如在需要使用條件格式的工作表中的某單元格中輸入公式來引用其他工作表中的單元格,然后在條件格式中引用此單元格。
下面借用自已在學(xué)習(xí)中看到的關(guān)于條件格式的一些示例,對條件格式作進一步詳細的介紹。
示例3:標(biāo)識包含文本的單元格如圖6所示,在單元格區(qū)域B2:C4中包含數(shù)字和文本,現(xiàn)在要對該區(qū)域中的文本應(yīng)用特定的格式,以標(biāo)識包含文本的單元格。選擇B2:C4,單擊“格式─—條件格式”,在“條件格式”對話框最左側(cè)的組合框中選擇“公式”,在右側(cè)輸入公式“=ISTEXT(B2)”,單擊“格式”,設(shè)置字體為粗體,底紋為灰色。
圖6:對包含文本的單元格應(yīng)用格式
如果要對不同的單元格區(qū)域應(yīng)用該條件格式,那么ISTEXT函數(shù)的參數(shù)應(yīng)該是該區(qū)域左上角的單元格。
示例4:標(biāo)識兩個列表中不相同的數(shù)據(jù)有時,要找出兩個列表區(qū)域中不相同的數(shù)據(jù),并將該數(shù)據(jù)所在的單元格標(biāo)識出來。如圖7所示,有兩個列表區(qū)域A1:B12和D1:E12,現(xiàn)在要求找出區(qū)域D1:E12中與區(qū)域A1:B12有不同數(shù)據(jù)的單元格并將該單元格標(biāo)記為紅色底紋。
圖7:需要比較的兩個列表區(qū)域
現(xiàn)在,按下列步驟來完成上述要求:
第1步:將單元格區(qū)域A2:B12命名為OldData。
第2步:選擇單元格區(qū)域D2:E12,單擊菜單“格式——條件格式”。
第3步:在“條件格式”對話框中,在“條件”組合框中選擇“公式”,在右側(cè)框中輸入公式“=COUNTIF(OldData,D2)=0”。單擊“格式”按鈕,在彈出的對話框中選擇圖案為紅色,如圖8所示。
圖8:設(shè)置條件格式
第4步:單擊“確定”按鈕,此時如圖9所示,該列表中與左側(cè)列表含有不同的數(shù)據(jù)的單元格被標(biāo)上紅色底紋。
圖9:條件格式應(yīng)用后,標(biāo)識出不同的單元格
有時,可能列表在不同的工作表中,如圖10所示,要找出工作表Sheet2中與區(qū)域OldData中不同的數(shù)據(jù)單元格。與上述步驟3相同,選擇工作表Sheet2中的單元格區(qū)域A2:B12,調(diào)出“條件格式”對話框,并作如圖10所示的設(shè)置。
圖10:選擇區(qū)域A2:B12,設(shè)置條件格式
單擊“確定”按鈕后,效果如圖11所示,標(biāo)識出了與工作表Sheet1中區(qū)域OldData不同的數(shù)據(jù)。這也充分展示了定義名稱的好處。
圖11:應(yīng)用條件格式后,為與OldData區(qū)域不同的數(shù)據(jù)單元格標(biāo)上底紋
當(dāng)然,本示例只是演示,數(shù)據(jù)很少。如果要比較大量的數(shù)據(jù),光憑人工查找核對,費時費力且易出錯,通過應(yīng)用條件格式,將能夠很快達到要求。
示例5:繪制進度圖表靈活使用Excel的條件格式,可以繪制簡單的工作進度圖表。例如,要繪制如圖12所示的進度圖,其中開始和結(jié)束分別代表項目開始和結(jié)束的周。
圖12:完成后的進度圖效果。在項目之間增加了空行,使圖示更清晰。
完成圖12的步驟如下:
第1步:在工作表中輸入數(shù)據(jù),并進行相應(yīng)的格式化操作。
第2步:選擇單元格區(qū)域D3:O15,單擊“格式——條件格式”。
第3步:在“條件格式”對話框中選擇“公式”并輸入下列公式:
=AND(D$2>=$B3,D$2<=$C3)
然后,單擊“格式”按鈕,應(yīng)用相應(yīng)的格式,如圖13所示。
圖13:設(shè)置條件格式
單擊“確定”按鈕后,完成最終的進度圖如圖12所示。此時,如果在工作表中更改開始和結(jié)束時間,進度條會相應(yīng)的更改。
如果需要為不同項目的進度條應(yīng)用不同的格式或顏色,則需要使用Excel 2007。在Excel 2007中提供了更為豐富的條件格式選擇和更優(yōu)美的界面,我們將詳細探討。這里,利用Excel 2007,為圖12所示的進度圖制作更豐富的效果。最終效果如圖14所示。
圖14:設(shè)置具有不同顏色的進度條
完成圖14的步驟如下:
第1步:在Excel 2007工作表中輸入數(shù)據(jù),并進行相應(yīng)的格式化操作。
第2步:選擇單元格區(qū)域D3:O3。在“開始”選項卡中選擇“條件格式——管理規(guī)則”,打開“條件格式規(guī)則管理器”對話框。單擊“新建規(guī)則”按鈕,打開“新建格式規(guī)則”對話框。選擇“使用公式確定要設(shè)置格式的單元格”,在“為符合此公式的值設(shè)置格式”中輸入公式:
=AND($B3<=D$2,$C3>=D$2)
單擊“格式”按鈕,在“填充”選項卡中選擇紅色,單擊“確定”按鈕關(guān)閉“設(shè)置單元格格式”對話框。單擊“確定”按鈕關(guān)閉“新建格式規(guī)則”對話框,此時的對話框如圖15所示。
圖15:設(shè)置規(guī)則
第3步:對單元格區(qū)域D5:O5、D7:O7、D9:O9、D11:O11、D13:O13、D15:O15分別重復(fù)第2步的操作。但是,在輸入公式時要針對具體的行進行修改,并對格式填充顏色進行相應(yīng)的更改。
完成后的進度圖如圖14所示。
最后,介紹一個在自已實際工作中,使用Excel條件格式的一個例子。
在一個工作表中,有許多條記錄,如何使Excel自動標(biāo)識出滿足特定條件的記錄呢?
例如:下圖所示的工作表中有多條記錄,要求當(dāng)字段“是否完成”列中單元格數(shù)據(jù)為“否”時,突出標(biāo)識該行(本例中將該行突出顯示為紅色),使用戶清楚沒有完成的工作;當(dāng)為“是”時,突出標(biāo)識的背景色自動消失。
現(xiàn)在開始實現(xiàn)這樣的效果,先看看下圖:
①選擇工作表的A列至E列。
②單擊菜單“格式”——“條件格式”。
③在“條件格式”對話框中,選擇“條件1”下拉框中的“公式”項。
④在“公式”框右側(cè)的文本框中輸入公式“=$E1=”否””。
⑤單擊下方的“格式”按鈕,在“單元格格式”對話框的“圖案”選項卡中,選擇顏色,這里是紅色。
⑥單擊“確定”按鈕,關(guān)閉“條件格式”對話框。效果如下圖:
此時,在E列中單元格的數(shù)據(jù)改為“是”時,該行的紅色底紋會自動消失;如果為“否”,則該行會自動加上紅色底紋。