Bài viết: Conditional Formatting cho biểu đồ bằng VBA

Liên hệ QC

kyo

Nguyễn Khắc Duy
Thành viên danh dự
Tham gia
4/6/06
Bài viết
901
Được thích
2,715
Conditional Formatting cho biểu đồ bằng VBA


Trước đây kyo từng giới thiệu 1 bài về cách dùng Conditional Formatting cho biểu đồ mà không cần VBA, đó là bạn lợi dụng cách bố trí dữ liệu. Hôm nay, kyo sẽ giới thiệu một cách khác, đó là sử dụng VBA.

Trước tiên, kyo có biểu đồ như sau:

25114984784_cf04aafe40_b.jpg


Và điều kiện để Conditional Formatting cho biểu đồ như sau:

25745410145_aa1aa5d385_o.png


Bây giờ, bạn hãy mở VBA ra và thêm đoạn code sau:

Mã:
Sub CF_Bieudo()
 
Dim bieudo As Chart, giatri As Series
Dim i As Long
 
Set bieudo = Sheets("Sheet1").ChartObjects("Chart 1").Chart
 
For Each giatri In bieudo.SeriesCollection
    For i = 1 To giatri.Points.Count
        If giatri.Values(i) >= 100000 Then
            giatri.Points(i).Interior.Color = RGB(146, 208, 80)
        ElseIf giatri.Values(i) >= 50000 Then
            giatri.Points(i).Interior.Color = RGB(255, 255, 0)
        ElseIf giatri.Values(i) >= 10000 Then
            giatri.Points(i).Interior.Color = RGB(141, 180, 226)
        ElseIf giatri.Values(i) < 10000 Then
            giatri.Points(i).Interior.Color = RGB(226, 107, 10)
        End If
    Next
Next
 
End Sub

Một số thông số bạn cần thay đổi cho phù hợp với biểu đồ của bạn:
1/ Dòng Set bieudo = Sheets("Sheet1").ChartObjects("Chart 1").Chart bạn cần thay đổi tên sheet và tên biểu đồ cho phù hợp với biểu đồ của bạn. Về tên sheet bạn dễ dàng thấy rồi, còn tên biểu đồ bạn cần bấm vào biểu đồ -> chọn thẻ Layout trên thanh Ribbon -> Chart Name.

25114984274_8c66e705e9_b.jpg


2/ Tại các dòng If…ElseIf…End If, bạn có thể thay đổi giá trị điều kiện lớn nhỏ của nó để VBA chỉnh sửa màu của bạn theo giá trị mà bạn định ra. Ngoài ra, nếu bạn muốn thêm sự lựa chọn, bạn hãy bổ sung thêm 1 ElseIf nữa tương tự là được.

3/ Về màu sắc hiện tại nằm trong hàm RGB, bạn có thể thay đổi thông số theo ý muốn về màu của bạn.

25118787773_1e55b4859b_b.jpg


Và kết quả cuối cùng của bạn sẽ như thế này:

25650337411_f4aa73bf2c_b.jpg


Ngoài ra, bạn nếu muốn macro của mình tiện dụng hơn, bạn có thể sử dụng chức năng Assign macro vào 1 nút bấm theo bài viết này.

Chúc bạn thành công.

Một số bài viết có liên quan:
1/ Hướng dẫn chi tiết cách vẽ biểu đồ Pareto
2/ Hướng dẫn cách lập ma trận BCG
3/ Hướng dẫn chi tiết cách vẽ biểu đồ kiểm soát (Control Chart)
4/ Hướng dẫn từng bước vẽ biểu đồ Stock
5/ Hướng dẫn từng bước vẽ biểu đồ Bubble
6/ Vẽ đồ thị Microsoft Excel 2003-2016 từ cơ bản đến nâng cao (phần 3)
7/ Vẽ đồ thị Microsoft Excel 2003-2016 từ cơ bản đến nâng cao (phần 2)
8/ Vẽ đồ thị Microsoft Excel 2003-2016 từ cơ bản đến nâng cao (phần 1)
9/ Làm thế nào để đồ thị hoạt động hiệu quả?
10/ Nhãn danh mục không chen ngang vào biểu đồ
 

File đính kèm

  • Conditional Formatting cho bieu do.xlsm
    20.5 KB · Đọc: 15
Lần chỉnh sửa cuối:
Upvote 0
Web KT
Back
Top Bottom