fbpx

Tạo ô nhấp nháy trong Excel khi điều kiện thoả mãn

Chia sẻ bài viết này:
  •  
  •  
  •  
  •  
  •  
  •  
  •   
  •   

Trong Dashboard mà sắp tới bạn chuẩn bị cho sếp, có thể bạn cần 1 điểm nhấn, ví dụ như 1 ô nhấp nháy khi điều kiện doanh thu đạt Target, trong bài viết này, chúng ta sẽ đi tìm hiểu cách tạo ô nhấp nháy trong Excel.

Đầu tiên, chúng ta có dữ liệu mẫu như sau

Dữ liệu mẫu

Dữ liệu mẫu

Trong dữ liệu trên, chúng ta muốn rằng, khi doanh thu tổng của 4 Quý trong năm lớn hơn Target ở B1 thì ô C7 chúng ta sẽ cần nhấp nháy màu xanh. Để làm được điều này, chúng ta sẽ cần viết 1 đoạn code chịu trách nhiệm cho việc tạo ô nhấp nháy trong 1 Module trong trình soạn thảo VBA như sau:

Trong đoạn code phía trên, ở dòng 5, chúng ta sẽ gán cho ô C7 vào biến blinking_cell. Để đạt được hiệu ứng nhấp nháy, chúng ta sẽ cho code chạy trong vòng lặp Do While Loop trên nguyên lý sau đây: thay đổi màu nền của ô sang màu xanh (code màu 43), dừng 1 giây,  sau đó chuyển trở lại màu nền thành màu trắng (code màu 0), sau đó dừng 1 giây, sau đó chuyển trở lại màu nền xanh (code màu 43).

DoEvents là từ khoá sẽ giúp chúng ta cập nhật UI (giao diện Excel) trong khi code đang chạy trong vòng lặp, bởi vì bình thường, khi chúng ta chạy vòng lặp trong VBA thì con trỏ chuột sẽ quay vòng vòng và giao diện Excel sẽ không được cập nhật. Đó là lý do chúng ta sử dụng từ khoá DoEvents.

Ở dòng 14, chúng ta cần 1 cách để dừng nhấp nháy ô trong Excel, vậy nên chúng ta lấy ô C1 để làm “công tắc” cho chuyện này như trên code.

Sau đó, trong sự kiện Worksheet_change của Sheet1, chúng ta sử dụng đoạn code sau đây:

Để theo dõi chi tiết hơn, mời các bạn theo dõi video sau đây hoặc download file

 


Chia sẻ bài viết này:
  •  
  •  
  •  
  •  
  •  
  •  
  •   
  •