Menu

App script quản lý rủi ro cho cá nhân & doanh nghiệp với báo cáo chuẩn định dạng biểu đồ

Bí kíp sử dụng hàm OFFSET để tạo vùng dữ liệu động cho biểu đồ

Khưu Huân Lệ 21/03/2026 17:51 405 lượt xem 2 trả lời

Chào các bác, hôm nay em muốn chia sẻ một mẹo nhỏ mà em hay dùng để xử lý dữ liệu khi làm biểu đồ. Tình huống là thế này, mình có một bảng dữ liệu gốc, và mình muốn biểu đồ của mình nó tự động cập nhật khi có thêm dữ liệu mới mà không cần phải sửa thủ công vùng tham chiếu của biểu đồ.

Giải pháp em tìm ra là dùng hàm OFFSET. Nghe tên thì có vẻ hơi lạ nhưng thực ra nó rất hữu ích.

Cú pháp của hàm OFFSET:

OFFSET(reference, rows, cols, [height], [width])
  • reference: Ô hoặc vùng đầu tiên mà bạn muốn bắt đầu đếm.
  • rows: Số hàng bạn muốn di chuyển xuống (hoặc lên nếu là số âm).
  • cols: Số cột bạn muốn di chuyển sang phải (hoặc sang trái nếu là số âm).
  • height: Chiều cao (số hàng) của vùng bạn muốn trả về.
  • width: Chiều rộng (số cột) của vùng bạn muốn trả về.

Trong trường hợp làm biểu đồ động, mình thường kết hợp nó với hàm COUNTA để xác định heightwidth. Ví dụ, để xác định vùng dữ liệu cho trục X của biểu đồ (giả sử dữ liệu nằm ở cột A, bắt đầu từ A2 và không có dòng trống):

=OFFSET($A$2, 0, 0, COUNTA($A:$A)-1, 1)

Và cho trục Y (giả sử dữ liệu nằm ở cột B, bắt đầu từ B2):

=OFFSET($B$2, 0, 0, COUNTA($B:$B)-1, 1)

Sau đó, khi tạo hoặc chỉnh sửa biểu đồ, bạn chỉ cần nhập các công thức này vào ô tham chiếu dữ liệu thay vì chọn thủ công. Như vậy, mỗi khi bạn thêm dữ liệu vào cuối cột A và B, biểu đồ sẽ tự động mở rộng ra để bao gồm dữ liệu mới.

Hy vọng mẹo này hữu ích cho các bác trong quá trình làm việc với Excel!

3

Hay quá bác ơi! Em cũng đang đau đầu vụ cập nhật biểu đồ tự động đây.

Cái hàm OFFSET này đúng là thần thánh thật. Bác có thể chia sẻ thêm ví dụ cụ thể hơn về cách dùng OFFSET kết hợp với COUNTA để xác định heightwidth không ạ? Em đang hình dung ra cách áp dụng cho báo cáo bán hàng của em.

Cảm ơn bác đã chia sẻ!

1

Đúng là OFFSET với COUNTA là bộ đôi ăn ý để tạo vùng dữ liệu động cho biểu đồ luôn đó bạn! Mình cũng hay dùng cách này.

Để xác định height, bạn có thể dùng COUNTA(vùng_cần_đếm_số_dòng). Ví dụ, nếu dữ liệu của bạn nằm ở cột A từ A2 trở xuống và bạn muốn đếm tất cả các ô có dữ liệu trong cột đó để làm chiều cao cho biểu đồ, thì height sẽ là COUNTA(A:A)-1 (trừ đi dòng tiêu đề).

Tương tự, với width, nếu bạn muốn biểu đồ tự động lấy hết các cột có dữ liệu, bạn có thể dùng COUNTA(dòng_chứa_tiêu_đề). Ví dụ, nếu các tiêu đề của bạn nằm ở dòng 1 từ cột A đến cột C, thì width sẽ là COUNTA(1:1).

Bạn thử áp dụng với báo cáo bán hàng xem sao nhé, hy vọng sẽ giúp ích cho bạn!

3

Bạn cần đăng nhập để trả lời chủ đề này.

Đăng nhập Đăng ký