Mục lục
Trong hướng dẫn này, bạn sẽ tìm hiểu cách tạo một dải động được đặt tên trong Excel và cách sử dụng nó trong các công thức để tự động đưa dữ liệu mới vào các phép tính.
Trong tuần trước hướng dẫn, chúng tôi đã xem xét các cách khác nhau để xác định phạm vi được đặt tên tĩnh trong Excel. Tên tĩnh luôn đề cập đến cùng các ô, nghĩa là bạn sẽ phải cập nhật tham chiếu phạm vi theo cách thủ công bất cứ khi nào bạn thêm mới hoặc xóa dữ liệu hiện có.
Nếu đang làm việc với tập dữ liệu thay đổi liên tục, bạn có thể muốn làm cho phạm vi được đặt tên của bạn động để nó tự động mở rộng để chứa các mục hoặc hợp đồng mới được thêm vào để loại trừ dữ liệu đã xóa. Trong phần tiếp theo của hướng dẫn này, bạn sẽ tìm thấy hướng dẫn chi tiết từng bước về cách thực hiện việc này.
Cách tạo dải ô được đặt tên động trong Excel
Dành cho Để bắt đầu, hãy tạo một dải ô có tên động bao gồm một cột đơn và một số hàng thay đổi. Để hoàn tất, hãy thực hiện các bước sau:
- Trên tab Công thức , trong nhóm Tên được xác định , hãy nhấp vào Xác định tên . Hoặc, nhấn Ctrl + F3 để mở Trình quản lý tên Excel và nhấp vào nút Mới… .
- Dù bằng cách nào, hộp thoại Tên mới sẽ mở ra, trong đó bạn chỉ định các chi tiết sau:
- Trong hộp Tên , hãy nhập tên cho phạm vi động của bạn.
- Trong danh sách thả xuống Phạm vi , hãy đặt phạm vi của tên. Workbook (mặc định) được khuyên dùng trong hầu hếttrường hợp.
- Trong hộp Refers to , hãy nhập công thức OFFSET COUNTA hoặc INDEX COUNTA.
- Nhấp vào OK. Xong!
Trong ảnh chụp màn hình sau, chúng tôi xác định một dải ô có tên động items chứa tất cả ô có dữ liệu trong cột A, ngoại trừ hàng tiêu đề :
Công thức OFFSET để xác định phạm vi được đặt tên động trong Excel
Công thức chung để tạo phạm vi được đặt tên động trong Excel như sau:
OFFSET ( first_cell, 0, 0, COUNTA( column), 1)Ở đâu:
- first_cell - ô đầu tiên mục được bao gồm trong phạm vi đã đặt tên, ví dụ $A$2.
- cột - một tham chiếu tuyệt đối tới cột như $A:$A.
Cốt lõi của công thức này, bạn sử dụng hàm COUNTA để lấy số ô không trống trong cột quan tâm. Con số đó chuyển trực tiếp đến đối số height của hàm OFFSET(reference, rows, cols, [height], [width]) để cho hàm biết số lượng hàng cần trả về.
Ngoài ra, đó là một công thức Offset thông thường, trong đó:
- tham chiếu là điểm bắt đầu mà từ đó bạn căn cứ vào offset (first_cell).
- hàng và cols đều bằng 0, vì không có cột hoặc hàng nào bù trừ.
- chiều rộng bằng 1 cột.
Ví dụ: để tạo dải ô được đặt tên động cho cột A trong Trang tính 3, bắt đầu từ ô A2, chúng tôi sử dụng công thức sau:
=OFFSET(Sheet3!$A$2, 0, 0, COUNTA(Sheet3!$A:$A), 1)
Lưu ý. Nếu bạn đang xác địnhmột phạm vi động trong trang tính hiện tại, bạn không cần đưa tên trang tính vào tham chiếu, Excel sẽ tự động làm điều đó cho bạn. Nếu bạn đang tạo một dải ô cho một số trang tính khác, hãy thêm tiền tố vào ô hoặc tham chiếu dải ô bằng tên của trang tính, sau đó là dấu chấm than (như trong ví dụ về công thức ở trên).
Công thức INDEX để tạo một dải ô được đặt tên động trong Excel
Một cách khác để tạo dải động Excel là sử dụng COUNTA kết hợp với hàm INDEX.
first_cell:INDEX( column,COUNTA( column)))Công thức này bao gồm hai phần:
- Ở phía bên trái của toán tử phạm vi (:), bạn đặt tham chiếu bắt đầu được mã hóa cứng như $A$2 .
- Ở bên phải, bạn sử dụng hàm INDEX(array, row_num, [column_num]) để tìm ra tham chiếu kết thúc. Tại đây, bạn cung cấp toàn bộ cột A cho mảng và sử dụng COUNTA để lấy số hàng (nghĩa là số ô không được nhập trong cột A).
Đối với tập dữ liệu mẫu của chúng tôi (vui lòng xem ảnh chụp màn hình ở trên), công thức như sau:
=$A$2:INDEX($A:$A, COUNTA($A:$A))
Vì có 5 ô không trống trong cột A, bao gồm tiêu đề cột, COUNTA trả về 5. Do đó, INDEX trả về $A $5, là ô được sử dụng cuối cùng trong cột A (thường thì công thức Chỉ mục trả về một giá trị, nhưng toán tử tham chiếu buộc nó phải trả về một tham chiếu). Và bởi vì chúng tôi đã đặt $A$2 làm điểm bắt đầu, kết quả cuối cùng củacông thức là phạm vi $A$2:$A$5.
Để kiểm tra phạm vi động mới được tạo, bạn có thể yêu cầu COUNTA tìm nạp số lượng mục:
=COUNTA(Items)
Nếu tất cả được thực hiện đúng, kết quả của công thức sẽ thay đổi khi bạn thêm hoặc xóa các mục vào/khỏi danh sách:
Lưu ý. Hai công thức được thảo luận ở trên tạo ra cùng một kết quả, tuy nhiên có sự khác biệt về hiệu suất mà bạn nên biết. OFFSET là một hàm dễ bay hơi tính toán lại với mọi thay đổi đối với trang tính. Trên các máy hiện đại mạnh mẽ và tập dữ liệu có kích thước hợp lý, đây không phải là vấn đề. Trên các máy có dung lượng thấp và tập dữ liệu lớn, điều này có thể làm chậm Excel của bạn. Trong trường hợp đó, bạn nên sử dụng công thức INDEX để tạo phạm vi động được đặt tên.
Cách tạo phạm vi động hai chiều trong Excel
Để tạo phạm vi được đặt tên hai chiều, trong đó không chỉ số hàng mà cả số cột là động, hãy sử dụng sửa đổi sau đây của công thức INDEX COUNTA:
first_cell:INDEX($1:$1048576, COUNTA( first_column), COUNTA( first_row))))Trong công thức này, bạn có hai hàm COUNTA để lấy hàng không trống cuối cùng và cột không trống cuối cùng ( row_num và các đối số column_num tương ứng của hàm INDEX). Trong đối số mảng , bạn cung cấp toàn bộ trang tính (1048576 hàng trong Excel 2016 - 2007; 65535 hàng trong Excel 2003 trở xuống).
Và bây giờ,hãy xác định thêm một phạm vi động cho tập dữ liệu của chúng ta: phạm vi có tên doanh số bao gồm số liệu doanh số trong 3 tháng (tháng 1 đến tháng 3) và tự động điều chỉnh khi bạn thêm mục (hàng) hoặc tháng (cột) mới vào bảng.
Với dữ liệu bán hàng bắt đầu ở cột B, hàng 2, công thức có dạng như sau:
=$B$2:INDEX($1:$1048576,COUNTA($B:$B),COUNTA($2:$2))
Để đảm bảo phạm vi động của bạn hoạt động như mong muốn, hãy nhập các công thức sau vào đâu đó trên trang tính:
=SUM(sales)
=SUM(B2:D5)
Như bạn có thể thấy trong ảnh chụp màn hình bên dưới , cả hai công thức đều trả về cùng một tổng. Sự khác biệt thể hiện ngay khi bạn thêm các mục nhập mới vào bảng: công thức đầu tiên (với dải ô được đặt tên động) sẽ tự động cập nhật, trong khi công thức thứ hai sẽ phải được cập nhật theo cách thủ công với mỗi thay đổi. Điều đó tạo ra một sự khác biệt rất lớn phải không?
Cách sử dụng các dải ô được đặt tên động trong công thức Excel
Trong các phần trước của hướng dẫn này, bạn đã thấy một vài công thức đơn giản sử dụng phạm vi động. Bây giờ, chúng ta hãy thử nghĩ ra một thứ gì đó có ý nghĩa hơn để hiển thị giá trị thực của một dải động có tên động trong Excel.
Trong ví dụ này, chúng ta sẽ sử dụng công thức INDEX MATCH cổ điển thực hiện Vlookup trong Excel:
INDEX ( return_range, MATCH ( lookup_value, lookup_range, 0))
…và xem cách chúng tôi có thể làm cho công thức thậm chí còn hiệu quả hơn với việc sử dụngphạm vi được đặt tên động.
Như được hiển thị trong ảnh chụp màn hình ở trên, chúng tôi đang cố gắng tạo trang tổng quan, trong đó người dùng nhập tên mặt hàng trong H1 và nhận tổng doanh số cho mặt hàng đó trong H2. Bảng mẫu của chúng tôi được tạo cho mục đích trình diễn chỉ chứa 4 mục, nhưng trong trang tính thực tế của bạn có thể có hàng trăm, thậm chí hàng nghìn hàng. Hơn nữa, các mục mới có thể được thêm vào hàng ngày, do đó, việc sử dụng tham chiếu không phải là một tùy chọn, bởi vì bạn phải cập nhật công thức nhiều lần. Tôi quá lười biếng cho việc đó! :)
Để buộc công thức tự động mở rộng, chúng ta sẽ xác định 3 tên: 2 phạm vi động và 1 ô có tên tĩnh:
Dải_tìm_kiếm: =$A$2:INDEX($ A:$A, COUNTA($A:$A))
Return_range: =$E$2:INDEX($E:$E, COUNTA($E:$E))
Lookup_value: =$H$1
Lưu ý. Excel sẽ thêm tên của trang tính hiện tại vào tất cả các tham chiếu, vì vậy, trước khi tạo tên, hãy nhớ mở trang tính có dữ liệu nguồn của bạn.
Bây giờ, hãy bắt đầu nhập công thức trong H1. Khi nói đến đối số đầu tiên, hãy nhập một vài ký tự của tên bạn muốn sử dụng và Excel sẽ hiển thị tất cả các tên phù hợp có sẵn. Nhấp đúp vào tên thích hợp và Excel sẽ ngay lập tức chèn tên đó vào công thức:
Công thức hoàn chỉnh có dạng như sau:
=INDEX(Return_range, MATCH(Lookup_value, Lookup_range, 0))
Và hoạt động hoàn hảo!
Ngay sau khi bạn thêm bản ghi mới vào bảng, chúng sẽ được đưa vào tính toán của bạn tạimột lần mà không cần phải thực hiện một thay đổi nào đối với công thức! Và nếu bạn cần chuyển công thức sang một tệp Excel khác, chỉ cần tạo các tên giống nhau trong sổ làm việc đích, sao chép/dán công thức và làm cho công thức hoạt động ngay lập tức.
Mẹo. Ngoài việc làm cho công thức bền hơn, phạm vi động còn hữu ích để tạo danh sách thả xuống động.
Đây là cách bạn tạo và sử dụng phạm vi động được đặt tên trong Excel. Để xem kỹ hơn các công thức được thảo luận trong hướng dẫn này, bạn có thể tải xuống Sổ làm việc Phạm vi Động được Đặt tên Động trong Excel mẫu của chúng tôi. Tôi cảm ơn bạn đã đọc và hy vọng sẽ gặp bạn trên blog của chúng tôi vào tuần tới!