VBA XLUP | Làm thế nào để sử dụng VBA XLUP trong Excel? (với các ví dụ)

Excel VBA XLUP

Một điều bạn cần ghi nhớ khi viết mã VBA là những gì bạn làm với trang tính thông thường và bạn cũng có thể sao chép điều tương tự trong VBA. Một từ khóa như vậy trong mã hóa VBA là “XLUP”, trong bài viết này chúng tôi sẽ cho bạn thấy từ khóa này là gì trong mã hóa VBA và cách sử dụng nó trong mã hóa.

Làm thế nào để sử dụng VBA XLUP trong mã hóa?

Sau đây là các ví dụ về excel VBA XLUP.

Bạn có thể tải xuống Mẫu VBA XLUP Excel này tại đây - Mẫu VBA XLUP Excel

Ví dụ # 1 - Di chuyển các ô đến vị trí đã xóa của ô

Ví dụ: hãy xem kịch bản của dữ liệu bên dưới, nơi bạn cần xóa dữ liệu các ô màu đó và thêm dữ liệu hàng bên dưới lên dữ liệu trên.

Một cách để xóa điều này trong trang tính là chọn những ô mà chúng ta có thể chỉ cần xóa toàn bộ hàng đó. Nhưng ở đây tình huống hơi phức tạp vì tôi có các ô màu trong Bảng 1 khi chúng ta xóa toàn bộ hàng, thậm chí các hàng trong Bảng 2 cũng bị xóa, nhưng chúng tôi không muốn điều này xảy ra thay vào đó chúng tôi chỉ cần xóa các hàng có màu và các ô bên dưới sẽ di chuyển lên vị trí của các ô đã xóa.

Đầu tiên, chọn các ô màu và nhấn Ctrl + Biểu tượng Trừ (-) để mở tùy chọn “Xóa”.

Phím tắt để mở tùy chọn “Xóa”

Trong cửa sổ tùy chọn "xóa", chúng tôi có bốn tùy chọn, chúng tôi có thể chọn hành động theo yêu cầu của mình. Vì chúng ta cần di chuyển các ô của mình lên vị trí các ô đã xóa đó, hãy chọn “Shift Cell Up”.

Chúng ta sẽ có các hàng trong Bảng 2 không thay đổi.

Hành động này trong VBA yêu cầu sử dụng thuộc tính “XLUP” để thực hiện một tập hợp các hành động tương tự trong VBA. Bây giờ đến cửa sổ của trình soạn thảo VBA và bắt đầu tên macro của bạn.

Mã:

 Sub XLUP_Example () End Sub 

Đầu tiên cung cấp RANGE ô được bao gồm trong thao tác này. Trong hành động này, các ô đầu tiên được xóa và di chuyển lên là các ô “A5: B5”.

Mã:

 Sub XLUP_Example () Phạm vi ("A5: B5") Kết thúc Sub 

Đối với phạm vi ô này, hãy chọn phương pháp "Xóa".

Mã:

 Phạm vi phụ XLUP_Example () ("A5: B5"). Xóa Kết thúc phụ 

Như bạn có thể thấy đối với phương thức “Delete”, chúng ta có một đối số tùy chọn là [Shift], đối với đối số này, chúng ta cần nhập đối số là “XLUP”.

Mã:

 Sub XLUP_Example () Range ("A5: B5"). Xóa shift: = xlUp End Sub 

Bây giờ bạn có thể chạy mã này theo cách thủ công hoặc thông qua phím tắt F5 của excel để xem kết quả.

Như bạn thấy trong Bảng 1, chúng ta có hàng số 6 được chuyển lên hàng thứ 5 và mặt khác trong Bảng, hàng 2 (được tô màu) không thay đổi, vì vậy bằng cách sử dụng tùy chọn “VBA XLUP”, chúng ta có thể thực hiện thao tác này.

Ví dụ # 2 - Tìm hàng được sử dụng cuối cùng bằng cách sử dụng XLUP

Hãy tưởng tượng một tình huống mà bạn đang ở ô thứ A20 (xem hình bên dưới) và ô được sử dụng cuối cùng của bạn là A14.

Bây giờ nếu bạn muốn chọn ô được sử dụng cuối cùng (A14). bạn sẽ làm thế nào bằng cách sử dụng một phím tắt ???

Chúng tôi sẽ sử dụng Ctrl + phím Mũi tên Lên để di chuyển đến ô được sử dụng cuối cùng từ vị trí hiện tại.

Phím tắt để di chuyển đến ô được sử dụng gần đây nhất 

Vì vậy, từ ô hiện tại, Ctrl + Mũi tên lên đã chọn ô được sử dụng cuối cùng. Tương tự, trong mã hóa VBA, chúng tôi sử dụng END (XLUP) để thực hiện tương tự.

Bây giờ quay lại cửa sổ mã hóa VBA.

Trong cửa sổ này, chúng ta sẽ thực hiện nhiệm vụ tìm hàng được sử dụng cuối cùng trong trang tính. Tạo một thủ tục con mới trong cửa sổ VBA.

Mã:

 Sub XLUP_Example1 () End Sub 

Để lưu trữ số hàng được sử dụng cuối cùng. xác định biến là kiểu dữ liệu VBA LONG.

Mã:

 Sub XLUP_Example1 () Dim Last_Row_Number As Long End Sub 

Bây giờ đối với biến này, chúng ta sẽ gán số hàng được sử dụng cuối cùng.

Mã:

 Sub XLUP_Example1 () Dim Last_Row_Number As Long Last_Row_Number = End Sub 

Bây giờ sử dụng đối tượng RANGE và mở đối tượng này.

Mã:

 Sub XLUP_Example1 () Dim Last_Row_Number As Long Last_Row_Number = Range (End Sub 

Bây giờ hãy đề cập đến ô hoạt động (A20) cho đối tượng RANGE .

Mã:

 Sub XLUP_Example1 () Dim Last_Row_Number As Long Range ("A14"). Chọn Last_Row_Number = Range ("A20") End Sub 

Bây giờ mở thuộc tính END cho ô phạm vi được cung cấp.

Mã:

 Sub XLUP_Example1 () Dim Last_Row_Number As Long Range ("A14"). Chọn Last_Row_Number = Range ("A20"). End (End Sub 

Như bạn có thể thấy ở trên, chúng ta phải mũi tên các tùy chọn chính như “xlDown”, “xlToLeft”, “xlToRight”, “xlUp”. Vì chúng ta đang di chuyển lên từ ô A14, hãy chọn tùy chọn “VBA XLUP”.

Mã:

 Sub XLUP_Example1 () Dim Last_Row_Number As Long Range ("A14"). Chọn Last_Row_Number = Range ("A20"). End (xlUp) End Sub 

Sau khi di chuyển lên từ ô A14, chúng ta cần đề cập đến những gì chúng ta cần làm vì chúng ta cần số hàng được sử dụng cuối cùng mà tôi sẽ sử dụng thuộc tính ROW.

Mã:

 Sub XLUP_Example1 () Dim Last_Row_Number As Long Range ("A14"). Chọn Last_Row_Number = Range ("A20"). End (xlUp) .Row End Sub 

Bây giờ đối với hộp thông báo, hãy gán giá trị của biến “Last_Row_Number” .

Mã:

 Sub XLUP_Example1 () Dim Last_Row_Number As Long Range ("A14"). Chọn Last_Row_Number = Range ("A20"). End (xlUp) .Row MsgBox Last_Row_Number End Sub 

Bây giờ bạn có thể chạy mã này theo cách thủ công hoặc thông qua phím tắt F5 để xem kết quả.

Vì vậy, hộp thông báo hiển thị số hàng được sử dụng gần đây nhất là 14, vì vậy dữ liệu cuối cùng của chúng tôi được sử dụng số hàng là ô A14.

Trong trường hợp này, vì dữ liệu rất nhỏ, chúng tôi bắt đầu từ ô A20 nhưng khi dữ liệu lớn, chúng tôi không thể nói ô nào cần xem xét trước, trong những trường hợp như vậy, chúng tôi cần sử dụng một kỹ thuật khác.

Chúng ta cần sử dụng thuộc tính CELLS, dưới đây là ví dụ tương tự.

Mã:

 Sub XLUP_Example2 () Dim Last_Row_Number As Long Last_Row_Number = Cells (Rows.Count, 1) .End (xlUp) .Row MsgBox Last_Row_Number End Sub 

Bây giờ bạn có thể chạy mã này theo cách thủ công hoặc thông qua phím tắt F5 để xem kết quả.

Thay vì một đối tượng RANGE, tôi đã sử dụng thuộc tính CELLS. Hãy để tôi giải thích điều này chi tiết cho bạn.

ROW.COUNT điều này sẽ đếm có bao nhiêu hàng trong cột 1. Điều này sẽ làm là nó sẽ xem xét ô cuối cùng trong trang tính thay vì địa chỉ ô ngẫu nhiên, trong trường hợp trên, chúng tôi đã sử dụng A14 làm ô ngẫu nhiên Địa chỉ.

Những điều cần nhớ về VBA XLUP

  • XLUP là từ được sử dụng trong mã VBA để sao chép hành động của phím "Mũi tên lên" trong excel.
  • VBA XLUP được sử dụng để di chuyển từ các ô đang hoạt động sang ô ở trên hoặc ô được sử dụng cuối cùng.
  • XLUP thường được sử dụng cùng với thuộc tính END trong VBA.

$config[zx-auto] not found$config[zx-overlay] not found