Menu

Khám phá cách dùng hàm OFFSET để tạo vùng dữ liệu động trong Excel

Kim Hậu Khắc 05/06/2026 20:25 347 lượt xem 3 trả lời

Chào mọi người, hôm nay mình muốn chia sẻ một thủ thuật khá hay ho mà mình mới khám phá ra khi làm việc với Excel, đó là cách sử dụng hàm OFFSET để tạo ra một vùng dữ liệu có thể tự động co giãn. Cái này cực kỳ hữu ích khi bạn làm báo cáo động hoặc khi dữ liệu đầu vào của bạn thay đổi liên tục mà không có định dạng cố định.

Ví dụ, thay vì phải định nghĩa một vùng dữ liệu cố định như A1:B10, bạn có thể dùng OFFSET để Excel tự động xác định xem dữ liệu thực tế của bạn đang nằm ở đâu, từ đó giúp các hàm khác như SUM, AVERAGE, VLOOKUP... làm việc hiệu quả hơn mà không cần chỉnh sửa thủ công.

Cú pháp cơ bản của hàm OFFSET là:

OFFSET(reference, rows, cols, [height], [width])

Trong đó:

  • reference: Ô bắt đầu.
  • rows: Số hàng dịch chuyển từ reference.
  • cols: Số cột dịch chuyển từ reference.
  • height: Chiều cao (số hàng) của vùng trả về.
  • width: Chiều rộng (số cột) của vùng trả về.

Để tạo vùng dữ liệu động, ta thường kết hợp OFFSET với hàm COUNTA để đếm số lượng ô không trống. Ví dụ, để xác định vùng dữ liệu từ A1 đến cột cuối cùng có dữ liệu ở cột A, bạn có thể dùng:

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

Và để xác định vùng dữ liệu từ A1 đến ô cuối cùng có dữ liệu ở cả cột A và B, ta có thể dùng:

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

Cách này giúp bảng tính của bạn luôn cập nhật đúng dữ liệu mà không cần lo ngại về việc thêm/bớt dòng. Có ai đã từng áp dụng cách này chưa, chia sẻ thêm kinh nghiệm nhé!

1

Hay quá bạn ơi! Hàm OFFSET đúng là một "vũ khí bí mật" trong Excel. Mình cũng hay dùng nó để làm biểu đồ động, mỗi lần thêm dữ liệu là biểu đồ tự cập nhật, đỡ phải chỉnh sửa thủ công mệt lắm. Bạn có thể chia sẻ thêm về cách kết hợp OFFSET với các hàm khác để xử lý các trường hợp phức tạp hơn không? Ví dụ như khi cần lọc dữ liệu trước khi dùng OFFSET chẳng hạn?

5

Hàm OFFSET đúng là một công cụ mạnh mẽ, mình cũng thấy nó rất hữu ích cho các báo cáo động.

Ngoài việc làm vùng dữ liệu động cho biểu đồ, bạn thử áp dụng OFFSET để tạo bảng xếp hạng tự động xem sao. Khi có dữ liệu mới, bảng xếp hạng sẽ tự cập nhật theo thứ hạng luôn, rất tiện lợi!

Liệu có cách nào dùng OFFSET để lấy N dòng dữ liệu mới nhất không nhỉ? Mình đang tìm cách làm cho phần này.

3

Cảm ơn bạn đã chia sẻ một thủ thuật rất hay về hàm OFFSET! Đúng là khi dữ liệu thay đổi liên tục thì việc có một vùng động sẽ tiết kiệm rất nhiều thời gian.

Mình cũng từng dùng OFFSET để làm các báo cáo tự động cập nhật. Ngoài ra, bạn có thể thử kết hợp OFFSET với hàm COUNTA để xác định số dòng/cột dữ liệu hiện có, như vậy sẽ đảm bảo vùng dữ liệu động luôn bao quát hết dữ liệu mới nhất.

Ví dụ, nếu dữ liệu của bạn nằm từ cột A trở đi, bạn có thể dùng công thức tương tự như sau để xác định số dòng: ``excel =OFFSET(Sheet1!$A$1,0,0,COUNTA(Sheet1!$A:$A),1) `` Cách này giúp vùng dữ liệu tự động mở rộng khi bạn thêm dòng mới.

Bạn có thể chia sẻ thêm một ví dụ cụ thể về cách bạn áp dụng OFFSET cho báo cáo động không? Mình rất tò mò muốn học hỏi thêm!

1

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

Đăng nhập Đăng ký