Add-In dùng để Highlight dòng, cột

Tôi chợt nghĩ ra được 1 code có thể dùng để Highlight dòng hoặc cột, dựa trên nền tảng Conditional Formating
Code như sau:

Public Sub Highlight(SrcRng As Range, iColor As Long, Optional iType As Long = 1)
Dim TmpRng As Range, rRng As Range, cRng As Range
On Error Resume Next
Set rRng = ActiveCell.EntireRow
Set cRng = ActiveCell.EntireColumn
Cells.FormatConditions.Delete
Select Case iType
Case 1: Set TmpRng = Intersect(SrcRng.Cells, rRng)
Case 2: Set TmpRng = Intersect(SrcRng.Cells, cRng)
Case 3: Set TmpRng = Intersect(SrcRng.Cells, Union(rRng, cRng))
Case 4: Set TmpRng = Intersect(Range(SrcRng.Cells(1, 1), ActiveCell), Union(rRng, cRng))
End Select
If Application.CutCopyMode = False Then
TmpRng.FormatConditions.Add 2, , "TRUE"
TmpRng.FormatConditions(1).Interior.ColorIndex = iColor
End If
End Sub
Đây là code chính! Để có thể Hightlight dòng, cột tại sheet1, các bạn viết thêm 1 code cho sheet như sau:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(, Target) Is Nothing Then
Highlight , 5, 1 '<— đổi số này từ 1 đến 4 để cho ra 4 kiểu HighLight
End If
End Sub
Ưu điểm của code:
– Đơn giản và đáp ứng nhanh
– Không ảnh hưởng đến các màu sắc do ta tô sẳn trước đó
– Có 4 tùy chọn Highlight
– Có thể Save file thành 1 Add-In để dùng lâu dài (xóa code SelectionChange, chừa lại Module trước khi lưu)
Nhược điểm:
– Trên vùng hoạt động của code, ta không thể thêm bất kỳ điều kiện tô màu nào khác
———————————————
Các bạn xem file và góp ý hoàn thiện code nhé

www.giaiphapexcel.com/diendan/threads/add-in-d%C3%B9ng-%C4%91%E1%BB%83-highlight-d%C3%B2ng-c%E1%BB%99t.38511/

Ứng dụng AI và Chat GPT trong Quản trị nhân sự
Khóa học SprinGO phù hợp

Ứng dụng AI và Chat GPT trong Quản trị nhân sự

Học xong khóa này, học viên có thể: Hiểu đúng bản chất AI, các nhóm AI phổ biến và cách AI “hoạt động” ở...

Xem khóa học
Chia sẻ: