Tự động cập nhật Pivot Table bằng VBA

Pivot Table là một công cụ tuyệt vời trong Excel giúp chúng ta có thể tạo ra những bảng báo cáo nhanh và chính xác, đồng thời có thể sắp xếp và tóm tắt các thông tin trong Excel.

Tuy nhiên Pivot Table có 1 nhược điểm đó là nó không tự động cập nhật dữ liệu khi thay đổi dữ liệu ở bảng Nguồn. Muốn cập nhật dữ liệu trong Pivot Table chúng ta phải làm như sau:

Click chuột phải vào bảng Pivot Table => Chọn Refresh

Sau đây chúng ta cùng tìm hiểu cách thiết lập lệnh trong VBA để tự động Refresh dữ liệu trong Pivot Table

Ví dụ: Cho bảng dữ liệu sau:

Thiết lập trong VBA để tự động Refresh bảng Pivot Table mỗi khi thay đổi dữ liệu trong bảng A1:C16

Cách làm như sau:

Bước 1: Record Macro thao tác Refresh bảng Pivot Table

  • Trong Tab Developer chọn chức năng Record Macro
  • Click chuột phải vào bảng Pivot Table, chọn chức năng Refresh
  • Đóng thao tác Record Macro bằng cách bấm vào nút Stop Recording trong tab Developer

Chúng ta thu được đoạn Macro như sau:

ActiveSheet.PivotTables(“PivotTable1”).PivotCache.Refresh

PivotTable1 là tên của Pivot Table đã tạo

Bước 2: Tạo sự kiện Worksheet_Change cho Sheet chứa Dữ liệu gốc (Source của Pivot Table)

  • Mở cửa sổ VBA, double click vào Sheet1
  • Chọn sự kiện Change của Worksheet
  • Thiết lập câu lệnh như sau:

Chú ý:

  • A2:C20 là vùng phạm vi thay đổi dữ liệu. Nếu thiết lập phạm vi khác thì thay đổi tọa độ này
  • Nếu có sự thay đổi dữ liệu trong vùng A2:C20 thì sẽ thực hiện lệnh Refresh cho Pivot Table

Sau đó chúng ta kiểm tra lại xem câu lệnh VBA đã hoạt động đúng chưa bằng cách thay đổi dữ liệu trong bảng và xem kết quả.

Tải về file mẫu: http://bit.ly/2GVkNzF

Đến đây bạn đã có thể bắt đầu tìm hiểu những điều thú vị của VBA được rồi. VBA giúp ích rất nhiều trong công việc: giúp bạn tăng tốc trong quá trình xử lý trên Excel, giúp lập các báo cáo tự động, điều khiển các chương trình khác như Word, Power Point, Outlook … giúp biến file Excel của bạn trở thành 1 phần mềm chuyên nghiệp …

Để có thể học VBA một cách đầy đủ, có hệ thống, bạn hãy tham gia khoá học VBA101 – VBA cơ bản dành cho người mới bắt đầu của hệ thống Học Excel Online. Hiện nay hệ thống đang có nhiều ưu đãi khi bạn đăng ký khóa học này. Chi tiết xem tại:


Tác giả: dtnguyen (Nguyễn Đức Thanh)

@ Học Excel Online | DTNguyen.business
· · ·

Khóa học mới xuất bản