官术网_书友最值得收藏!

第15章 管理條件格式規則

一個區域可以添加多個條件格式,而條件與條件之間有可能產生沖突,這就需要對各條件進行相應的管理。條件格式可以為工作帶來無窮便利,但大量使用會使工作簿速度降低,這也迫使用戶需要對已存在的條件進行適當增刪。

● 實例114在已有條件格式區域增加條件

● 實例115刪除條件格式

● 實例116修改工作表中的條件格式

● 實例117提升第三個條件優先級為1

實例114 在已有條件格式區域增加條件

【技巧說明】 在已有條件格式區域增加一個條件。

【案例介紹】 如圖3.16所示之學生成績表,A列區域已有一個條件格式,對成績為“優”者以黃色底紋顯示。現需增加一個條件:成績為“差”者用紅色底紋顯示。

【案例實現】 參見以下步驟:

[1] 使用快捷鍵Alt+F11進入VBE(Visual Basic Editor)環境。

[2] 單擊菜單【插入】\【模塊】,打開模塊代碼窗口。

[3] 在右邊代碼窗口輸入以下代碼:

Sub新增一個條件格式()
    With Selection
      .FormatConditions.Add Type:=xlExpression, Formula1:="=OFFSET
        (A3,0,5)=""差"""
      .FormatConditions(.FormatConditions.Count).SetFirstPriority
      With .FormatConditions(1).Interior
          .PatternColorIndex=xlAutomatic
          .ColorIndex=3
          .TintAndShade=0
      End With
    End With
End Sub

[4] 關閉VBE窗口返回到工作表。

[5] 使用快捷鍵Alt+F8調出運行宏窗口,然后單擊“執行”按鈕,結果如圖3.17所示。

圖3.16 學生成績表

圖3.17 新增一個條件格式

提示

本實例參見光盤樣本:..\第3部分\實例114.xlsm。

實例115 刪除條件格式

【技巧說明】 刪除區域已有的條件格式。

【案例介紹】 工作簿中不需要條件格式時需將其刪除,可以刪除部分單元格的條件,也可以刪除當前表的所有條件。以實例114的數據為例,工作表的A3∶A11同時具有雙重條件格式。

【案例實現】 參見以下步驟:

[1] 使用快捷鍵Alt+F11進入VBE(Visual Basic Editor)環境。

[2] 單擊菜單【插入】\【模塊】,打開模塊代碼窗口。

[3] 在右邊代碼窗口輸入以下代碼:

Sub刪除條件格式()
  MsgBox "稍后刪除當前選區的條件格式。", 64, "提示"
    Selection.FormatConditions.Delete
  MsgBox "稍后刪除當前工作表的條件格式。", 64, "提示"
    Cells.FormatConditions.Delete
End Sub

[4] 關閉VBE窗口返回到工作表。

[5] 選中A3,使用快捷鍵Alt+F8調出運行宏窗口,然后單擊“執行”按鈕,彈出程序提示框提示“現在刪除當前選區的條件格式”,確定后工作表中當前選區的條件格式已刪除,如圖3.18所示。

[6] 再次彈出提示框,提示“現在刪除當前工作表的條件格式”,確定后工作表所有條件格式都已刪除,結果如圖3.19所示。

圖3.18 已刪除當前單元格的條件格式

圖3.19 已刪除當前表的條件格式

提示

本實例參見光盤樣本:..\第3部分\實例115.xlsm。

【相關知識說明】

FormatConditions.Delete:刪除條件格式。

實例116 修改工作表中的條件格式

【技巧說明】 修改工作表中第N個條件格式。

【案例介紹】 條件格式的顏色格式可以隨意修改為其他任意顏色,也可以將顏色格式改為邊框。本例以實例114的數據為例,修改任意條件下的顏色格式。

【案例實現】 參見以下步驟:

[1] 使用快捷鍵Alt+F11進入VBE(Visual Basic Editor)環境。

[2] 單擊菜單【插入】\【模塊】,打開模塊代碼窗口。

[3] 在右邊代碼窗口輸入以下代碼:

Sub修改第N個條件格式()
    Dim i As Byte
    i=Application.InputBox("請輸入要修改格式的條件序號:","序號","2",100,100,,,1)
    If i > Selection.FormatConditions.Count Or i < 1 Then Exit Sub
    Selection.FormatConditions(i).Interior.ColorIndex=5
End Sub

[4] 關閉VBE窗口返回到工作表。

[5] 選中A3∶A11,使用快捷鍵Alt+F8調出運行宏窗口,然后單擊“執行”按鈕,程序彈出輸入要修改格式的條件序號對話框,如圖3.20所示。

[6] 輸入2并單擊“確定”按鈕后,選區中第二條件格式的顏色格式由紅色變成了藍色,效果如圖3.21所示。

圖3.20 輸入要修改格式的條件序號對話框

圖3.21 更改條件格式的顏色格式

提示

本實例參見光盤樣本:..\第3部分\實例116.xlsm。

【相關知識說明】

本實例中IF…Then語句用于排錯,輸入數據不在條件格式數目范圍中時則程序出錯。

實例117 提升第三個條件優先級為1

【技巧說明】 提升第三個條件優先級為1。

【案例介紹】 一個區域中可以同時存在多個條件,而各個條件之間有可能產生沖突。即一個單元格同時符合多個條件,但同類型的格式如背景色卻只能顯示一種。此時條件格式的優先級就顯得尤為重要了。如圖3.22所示數據,其條件格式有三個,如圖3.23所示,其中單元格A8∶B8同時符合三個條件,它既高于平均值又處于前6個范圍,而且單元格數值等于8,但因為值為8這個條件處于最上層,所以單元格的格式顯示為黃色底紋。

本實例演示將第三層條件優先級提升為1,使A8∶B8背景色變為淺藍色。

【案例實現】 參見以下步驟:

[1] 使用快捷鍵Alt+F11進入VBE(Visual Basic Editor)環境。

[2] 單擊菜單【插入】\【模塊】,打開模塊代碼窗口。

圖3.22 區域中的多重條件格式

圖3.23 條件格式規則管理器

[3] 在右邊代碼窗口輸入以下代碼:

Sub提升優先級()
  Range("a2:b10").FormatConditions(3).SetFirstPriority
End Sub

[4] 關閉VBE窗口返回到工作表。

[5] 選中A2∶B10,使用快捷鍵Alt+F8調出運行宏窗口,然后單擊“執行”按鈕,區域A2:B10背景色相應變化,如圖3.24所示。

圖3.24 將第三級條件提升為第一級后的區域

提示

本實例參見光盤樣本:..\第3部分\實例117.xlsm。

主站蜘蛛池模板: 阿坝县| 沅江市| 洪泽县| 巫山县| 红安县| 镇平县| 万荣县| 金阳县| 凤山县| 安徽省| 平罗县| 桐梓县| 肇州县| 芦山县| 嵊州市| 克拉玛依市| 皮山县| 鄢陵县| 永州市| 丹凤县| 吉林省| 乐安县| 清远市| 富蕴县| 闵行区| 阜新| 柘荣县| 县级市| 东港市| 周口市| 双牌县| 高密市| 广州市| 德安县| 汤原县| 云浮市| 松江区| 万全县| 汨罗市| 通许县| 贡觉县|