Bài 7 - Mã màu và cách xác định mã màu trong lập trình VBA Excel


Excel ColorIndex

Bảng giá trị mã màu ColorIndex (hình trên) cho mục đích tham chiếu, có thể đặt giá trị hoặc trả về giá trị mã màu của đối tượng hoặc Cell. Bảng được áp dụng cho các thuộc tính đường viền, màu chữ và màu nền của Cell.

Ngoài ra ColorIndex còn có 2 giá trị mặc định sau:

ColorIndex Value Explanation
-4142 / xlColorIndexNone / xlNone No fill
-4105 / xlColorIndexAutomatic / xlAutomatic Default color (white)

Set màu đường viền cho Cell
Range("A5").Borders.ColorIndex = 5

Set màu chữ trong Cell
Range("A5").Font.ColorIndex = 5

Set màu nền cho Cell
Range("A5").Interior.ColorIndex = 5

Nhận giá trị trả về của Cell
giatri = Range("A5").Interior.ColorIndex

Excel RGB Color

Đây là bảng màu thuộc tính của đối tượng Hex color code, thường được sử dụng để set màu cho Cell hoặc Shape.




Set màu đỏ đường viền cho Cell
Range("A5").Borders.Color = RGB (255 , 0, 0)

Set màu đỏ cho chữ trong Cell
Range("A5").Font.Color = RGB (255 , 0, 0)

Set màu đỏ nền cho Cell
Range("A5").Interior.Color = RGB (255 , 0, 0)

RGB Color là dạng kết hợp giữa 3 màu Red, Green, Blue ( R, G, B ), mỗi màu là một số nguyên 8 bit có giá trị từ 0 đến 255. Như vậy, bảng màu RGB có tổng số màu = 256 x 256 x 256 = 16,777,216
Hex color code là dãy chữ số có 6 ký tự trong hệ 16: RRGGBB. Trong đó hai ký tự đầu (RR) đại diện cho màu đỏ, hai ký tự giữa (GG) đại diện cho màu xanh lá, và hai ký tự cuối (BB) đại diện cho màu xanh dương.

Cách chuyển đổi Hex color code sang RGB

Hex color code: FF0000R = FF = 255
G = 00 = 0
B = 00 = 0Ta được RGB là RGB (255, 0, 0)

Cách chuyển đổi RGB sang Hex color code

RGB color: RGB (255, 215, 0)R = 255 = FF
G = 215 = D7
B = 0 = 00Ta được Hex color code là #FFD700

Excel VBA Color


Nếu các bạn không nhớ con số của các mã màu thì cách đơn giản nhất là dùng tên mã màu trong VBA. Tuy nhiên số lượng màu rất hạn chế.

Set màu chữ trong Cell
Range("A3").Font.Color = vbRed


Post a Comment

Previous Post Next Post