Bỏ qua nội dung chính

Làm cách nào để tạo phạm vi được đặt tên động trong Excel?

Thông thường, Dãy được đặt tên rất hữu ích cho người dùng Excel, bạn có thể xác định một loạt giá trị trong một cột, đặt tên cho cột đó và sau đó bạn có thể tham chiếu đến phạm vi đó theo tên thay vì tham chiếu ô của nó. Nhưng hầu hết thời gian, bạn cần thêm dữ liệu mới để mở rộng các giá trị dữ liệu của phạm vi được giới thiệu trong tương lai. Trong trường hợp này, bạn phải quay lại Công thức > Người quản lý tên và xác định lại phạm vi để bao gồm giá trị mới. Để tránh điều này, bạn có thể tạo một phạm vi được đặt tên động có nghĩa là bạn không cần phải điều chỉnh các tham chiếu ô mỗi khi bạn thêm một hàng hoặc cột mới vào danh sách.

Tạo phạm vi được đặt tên động trong Excel bằng cách tạo bảng

Tạo phạm vi được đặt tên động trong Excel với Hàm

Tạo phạm vi được đặt tên động trong Excel với mã VBA


mũi tên màu xanh bong bóng bên phải Tạo phạm vi được đặt tên động trong Excel bằng cách tạo bảng

Nếu bạn đang sử dụng phiên bản Excel 2007 trở lên, thì cách dễ nhất để tạo một dải ô được đặt tên động là tạo một bảng Excel được đặt tên.

Giả sử bạn có một dải dữ liệu sau đây cần trở thành dải ô được đặt tên động.

doc-dải-động1

1. Đầu tiên, tôi sẽ xác định tên phạm vi cho phạm vi này. Chọn phạm vi A1: A6 và nhập tên Ngày vào Tên Box, sau đó nhấn đăng ký hạng mục thi Chìa khóa. Để xác định tên cho phạm vi B1: B6 là Saleprice với cách tương tự. Đồng thời, tôi tạo ra một công thức = sum (Saleprice) trong một ô trống, xem ảnh chụp màn hình:

doc-dải-động2

2. Chọn phạm vi và nhấp vào Chèn > Bàn, xem ảnh chụp màn hình:

doc-dải-động3

3. Trong Tạo bảng hộp nhắc nhở, kiểm tra Bảng của tôi có tiêu đề (nếu phạm vi không có tiêu đề, hãy bỏ chọn nó), nhấp vào OK và dữ liệu phạm vi đã được chuyển đổi thành bảng. Xem ảnh chụp màn hình:

doc-dải-động4 -2 doc-dải-động5

4. Và khi bạn nhập các giá trị mới sau dữ liệu, phạm vi được đặt tên sẽ tự động điều chỉnh và công thức đã tạo cũng sẽ được thay đổi. Xem ảnh chụp màn hình sau:

doc-dải-động6 -2 doc-dải-động7

Ghi chú:

1. Dữ liệu nhập mới của bạn phải liền kề với dữ liệu trên, có nghĩa là không có hàng hoặc cột trống giữa dữ liệu mới và dữ liệu hiện có.

2. Trong bảng, bạn có thể chèn dữ liệu vào giữa các giá trị hiện có.


mũi tên màu xanh bong bóng bên phải Tạo phạm vi được đặt tên động trong Excel với Hàm

Trong Excel 2003 hoặc phiên bản cũ hơn, phương pháp đầu tiên sẽ không khả dụng, vì vậy đây là một cách khác dành cho bạn. Sau BÙ LẠI( ) hàm có thể làm điều này giúp bạn, nhưng nó hơi rắc rối. Giả sử tôi có một dải dữ liệu chứa các tên dải ô mà tôi đã xác định, ví dụ: A1: A6 tên phạm vi là NgàyB1: B6 tên phạm vi là Giá bánđồng thời, tôi tạo công thức cho Giá bán. Xem ảnh chụp màn hình:

doc-dải-động2

Bạn có thể thay đổi tên phạm vi thành tên phạm vi động bằng các bước sau:

1. Đi đến nhấp chuột Công thức > Người quản lý tên, xem ảnh chụp màn hình:

doc-dải-động8

2. Trong Người quản lý tên hộp thoại, chọn mục bạn muốn sử dụng và nhấp vào Chỉnh sửa .

doc-dải-động9

3. Trong cửa sổ bật ra Chỉnh sửa tên hộp thoại, nhập công thức này = OFFSET (Trang tính 1! $ A $ 1, 0, 0, COUNTA ($ A: $ A), 1) vào Đề cập đến hộp văn bản, xem ảnh chụp màn hình:

doc-dải-động10

4. Sau đó nhấn vào OK, và sau đó lặp lại bước 2 và bước 3 để sao chép công thức này = OFFSET (Trang tính1! $ B $ 1, 0, 0, COUNTA ($ B: $ B), 1) vào Đề cập đến hộp văn bản cho Giá bán tên phạm vi.

5. Và các phạm vi được đặt tên động đã được tạo. Khi bạn nhập các giá trị mới sau dữ liệu, phạm vi được đặt tên sẽ tự động điều chỉnh và công thức đã tạo cũng sẽ được thay đổi. Xem ảnh chụp màn hình:

doc-dải-động6 -2 doc-dải-động7

Lưu ý: Nếu có các ô trống ở giữa phạm vi của bạn, kết quả của công thức của bạn sẽ bị sai. Đó là bởi vì các ô không trống không được tính, vì vậy phạm vi của bạn sẽ ngắn hơn bình thường và các ô cuối cùng trong phạm vi sẽ bị bỏ trống.

Mẹo: giải thích cho công thức này:

  • = OFFSET (tham chiếu, hàng, cột, [chiều cao], [chiều rộng])
  • -1
  • = OFFSET (Trang tính 1! $ A $ 1, 0, 0, COUNTA ($ A: $ A), 1)
  • tài liệu tham khảo tương ứng với vị trí ô bắt đầu, trong ví dụ này Trang tính 1! $ A $ 1;
  • hàng đề cập đến số hàng bạn sẽ di chuyển xuống dưới, liên quan đến ô bắt đầu (hoặc lên trên, nếu bạn sử dụng giá trị âm.), trong ví dụ này, 0 cho biết danh sách sẽ bắt đầu từ hàng đầu tiên trở xuống
  • cột tương ứng với số cột bạn sẽ di chuyển sang bên phải, so với ô bắt đầu (hoặc sang bên trái, sử dụng giá trị âm.), trong công thức ví dụ trên, 0 cho biết mở rộng 0 cột sang bên phải.
  • [Chiều cao] tương ứng với chiều cao (hoặc số hàng) của phạm vi bắt đầu tại vị trí đã điều chỉnh. $ A: $ A, nó sẽ đếm tất cả các mục được nhập vào cột A.
  • [chiều rộng] tương ứng với chiều rộng (hoặc số cột) của phạm vi bắt đầu từ vị trí đã điều chỉnh. Trong công thức trên, danh sách sẽ rộng 1 cột.

Bạn có thể thay đổi các đối số này theo nhu cầu của mình.


mũi tên màu xanh bong bóng bên phải Tạo phạm vi được đặt tên động trong Excel với mã VBA

Nếu bạn có nhiều cột, bạn có thể lặp lại và nhập công thức riêng lẻ cho tất cả các cột còn lại, nhưng đó sẽ là một quá trình lặp đi lặp lại lâu dài. Để làm cho mọi thứ dễ dàng hơn, bạn có thể sử dụng mã để tự động tạo phạm vi được đặt tên động.

1. Kích hoạt trang tính của bạn.

2. Giữ ALT + F11 chìa khóa và nó mở Cửa sổ Microsoft Visual Basic for Applications.

3. Nhấp chuột Chèn > Mô-đunvà dán mã sau vào Cửa sổ mô-đun.

Mã Vba: tạo dải ô được đặt tên động

Sub CreateNamesxx()
'Update 20131128
Dim wb As Workbook, ws As Worksheet
Dim lrow As Long, lcol As Long, i As Long
Dim myName As String, Start As String
Const Rowno = 1
Const Colno = 1
Const Offset = 1
On Error Resume Next
Set wb = ActiveWorkbook
Set ws = ActiveSheet
lcol = ws.Cells(Rowno, 1).End(xlToRight).Column
lrow = ws.Cells(Rows.Count, Colno).End(xlUp).Row
Start = Cells(Rowno, Colno).Address
wb.Names.Add Name:="lcol", RefersTo:="=COUNTA($" & Rowno & ":$" & Rowno & ")"
wb.Names.Add Name:="lrow", RefersToR1C1:="=COUNTA(C" & Colno & ")"
wb.Names.Add Name:="myData", RefersTo:="=" & Start & ":INDEX($1:$65536," & "lrow," & "Lcol)"
For i = Colno To lcol
    myName = Replace(Cells(Rowno, i).Value, " ", "_")
    If myName <> "" Then
        wb.Names.Add Name:=myName, RefersToR1C1:="=R" & Rowno + Offset & "C" & i & ":INDEX(C" & i & ",lrow)"
    End If
Next
End Sub

4. Sau đó nhấn F5 để chạy mã và sẽ có một số phạm vi được đặt tên động được tạo ra được đặt tên với các giá trị hàng đầu tiên và nó cũng tạo ra một phạm vi động được gọi là Dữ liệu của tôi bao gồm toàn bộ dữ liệu.

5. Khi bạn nhập các giá trị mới sau hàng hoặc cột, phạm vi cũng sẽ được mở rộng. Xem ảnh chụp màn hình:

doc-dải-động12
-1
doc-dải-động13

Ghi chú:

1. Với mã này, tên phạm vi không được hiển thị trong Tên Box, để xem và sử dụng các tên phạm vi một cách thuận tiện, tôi đã cài đặt Kutools cho Excel, Với khả Navigation Pane, tên phạm vi động đã tạo được liệt kê.

2. Với mã này, toàn bộ phạm vi dữ liệu có thể được mở rộng theo chiều dọc hoặc chiều ngang, nhưng cần nhớ rằng không được có hàng hoặc cột trống giữa dữ liệu khi bạn nhập các giá trị mới.

3. Khi bạn sử dụng mã này, phạm vi dữ liệu của bạn phải bắt đầu tại ô A1.


Bài viết liên quan:

Làm cách nào để tự động cập nhật biểu đồ sau khi nhập dữ liệu mới vào Excel?

Công cụ năng suất văn phòng tốt nhất

Các tính năng phổ biến: Tìm, đánh dấu hoặc xác định các bản sao   |  Xóa hàng trống   |  Kết hợp các cột hoặc ô mà không làm mất dữ liệu   |   Vòng không có công thức hữu ích. Cảm ơn !
Siêu tra cứu: Nhiều tiêu chí VLookup    VLookup Nhiều Giá Trị  |   VLookup trên nhiều trang tính   |   Tra cứu mờ ....
Danh sách thả xuống nâng cao: Tạo nhanh danh sách thả xuống   |  Danh sách thả xuống phụ thuộc   |  Danh sách thả xuống nhiều lựa chọn ....
Trình quản lý cột: Thêm một số cột cụ thể  |  Di chuyển cột  |  Chuyển đổi trạng thái hiển thị của các cột ẩn  |  So sánh dãy và cột hữu ích. Cảm ơn !
Các tính năng nổi bật: Tiêu điểm lưới   |  Chế độ xem thiết kế   |   Thanh công thức lớn    Trình quản lý sổ làm việc & trang tính   |  Thư viện tài nguyên (Văn bản tự động)   |  Bảng chọn ngày   |  Kết hợp các bảng tính   |  Mã hóa/Giải mã ô    Gửi email theo danh sách   |  Siêu lọc   |   Bộ lọc đặc biệt (lọc in đậm/nghiêng/gạch ngang...) ...
15 bộ công cụ hàng đầu12 bản văn CÔNG CỤ (thêm văn bản, Xóa ký tự,...)   |   50 + Biểu đồ Các loại (Biểu đồ Gantt,...)   |   40+ Thực tế Công thức (Tính tuổi dựa trên ngày sinh,...)   |   19 chèn CÔNG CỤ (Chèn mã QR, Chèn ảnh từ đường dẫn,...)   |   12 Chuyển đổi CÔNG CỤ (Số thành từ, Chuyển đổi tiền tệ,...)   |   7 Hợp nhất & Tách CÔNG CỤ (Các hàng kết hợp nâng cao, Chia ô,...)   |   ... và nhiều hơn nữa

Nâng cao kỹ năng Excel của bạn với Kutools for Excel và trải nghiệm hiệu quả hơn bao giờ hết. Kutools for Excel cung cấp hơn 300 tính năng nâng cao để tăng năng suất và tiết kiệm thời gian.  Bấm vào đây để có được tính năng bạn cần nhất...

tab kte 201905


Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
Comments (4)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
really, really not helpful
This comment was minimized by the moderator on the site
please help i am trying to create a dynamic named range on excel 2016 typing "=offset(DATAENTRY!$B$6,,,counta(DATAENTRY!$B$6:$B$13))" but still it gives me an error saying it is not a formula.
This comment was minimized by the moderator on the site
You are a very good teacher: 1) step-by-step approach; 2) you do not bore the student with obvious material or conclusions; 3) yet you include all necessary material. I look forward to more tutorials from you.
This comment was minimized by the moderator on the site
Thanks for good article
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations