故事起源:

因出貨的隨附檢查票(又稱COA)資料框誤,導致被客戶追殺,有鑒於此作了一點小改善,所以整理了本文當記錄。

為了避免再發,小小的我就發現檢查票是用EXCEL製作跟維護的,就立馬寫了管理規則,透過管理規則導入上下限的防呆機制但是!!!算一算近X千張客製化檢查票ㄝ,怎可能一張一張建立阿。 開始思考使用EXCEL 內建的VBA來建立管理規則得念頭,鑽研了一段時間,發現這類文章,其中中文的文獻其實有點少,當然單純手動新增管理規則的文章就超多,所以筆者決定透過留下本篇文章當作記錄。

 

物件:RANGE

屬性:FormatConditions

方法:FormatConditions.ADD

 

 MSDN 原文 1.管理規則寫入公式:(2個例子)

1.1公式

 ActiveSheet.Range(儲存格位置).FormatConditions.Add Type:=xlExpression, Formula1:="=" & 公式 

ActiveSheet.Range(儲存格位置).FormatConditions(1).Interior.ColorIndex = 3 '我是設定公式成立時反紅

1.2引用EXCEL函數

 ActiveSheet.Range(儲存格位置).FormatConditions.Add Type:=xlExpression, Formula1:="=" & EXCEL函數

 ActiveSheet.Range(儲存格位置).FormatConditions(1).Interior.ColorIndex = 3 

 

2.管理規則寫入格式化內容:

2.1 不介於(xlNotBetween)

 ActiveSheet.Range(R1).FormatConditions.Add Type:=xlCellValue, Operator:=xlNotBetween, Formula1:=10, Formula2:=20

 ActiveSheet.Range(R1).FormatConditions(1).Interior.ColorIndex = 3

 

看到此,這樣算VBA寫好了嗎? 當然不是,還需要配合檔案此一物件的控制才行,但此一部分屬另外一個範疇了,可以參考我的其他篇文章。

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 a200271071 的頭像
    a200271071

    a200271071的部落格

    a200271071 發表在 痞客邦 留言(0) 人氣()