VBA XLUP - Jak korzystać z VBA XLUP w programie Excel? (z przykładami)

Spisie treści

Excel VBA XLUP

Jedną z rzeczy, o których musisz pamiętać podczas pisania kodu VBA, jest to, co robisz ze zwykłym arkuszem roboczym, i możesz replikować to samo również w VBA. Jednym z takich słów kluczowych w kodowaniu VBA jest „XLUP” w tym artykule. Pokażemy Ci, czym jest to słowo kluczowe w kodowaniu VBA i jak go używać w kodowaniu.

Jak korzystać z VBA XLUP w kodowaniu?

Poniżej znajdują się przykłady programu Excel VBA XLUP.

Przykład 1 - Przenieś komórki do usuniętej pozycji komórek

Na przykład spójrz na scenariusz poniższych danych, w którym musisz usunąć te kolorowe komórki i więcej danych z poniższych wierszy do powyższych danych.

Jednym ze sposobów usunięcia tego w arkuszu jest zaznaczenie tych komórek, w których możemy po prostu usunąć cały wiersz. Ale tutaj sytuacje są trochę trudne, ponieważ mam kolorowe komórki w tabeli 1, gdy usuwamy cały wiersz, nawet wiersze tabeli 2 również są usuwane, ale nie chcemy, aby tak się stało; zamiast tego musimy tylko usunąć kolorowe wiersze, a poniżej komórki powinny przesunąć się w górę usuniętych komórek.

Najpierw wybierz kolorowe komórki i naciśnij Ctrl + symbol minus (-), aby otworzyć opcję „Usuń”.

Klawisz skrótu otwierający opcję „Usuń”

W oknie opcji „usuń” mamy cztery opcje. Możemy wybrać akcję zgodnie z naszymi wymaganiami. Ponieważ musimy przesunąć nasze komórki w górę, aby uzyskać pozycję tych usuniętych komórek, wybierz „Przesuń komórkę w górę”.

Będziemy mieć niezmienione wiersze tabeli 2.

Ta akcja w języku VBA wymaga użycia właściwości „XLUP” w celu wykonania podobnego zestawu działań w języku VBA. Teraz przejdź do okna edytora VBA i wprowadź nazwę makra.

Kod:

Sub XLUP_Example () End Sub

Najpierw podaj zakres komórek, które mają być uwzględnione w tej operacji. W tej akcji pierwsze komórki do usunięcia i przesunięcia w górę to komórki „A5: B5”.

Kod:

Sub XLUP_Example () Range ("A5: B5") End Sub

Dla tego zakresu komórek wybierz metodę „Usuń”.

Kod:

Sub XLUP_Example () Range („A5: B5”). Delete End Sub

Jak widać w przypadku metody „Usuń”, mamy jeden opcjonalny argument jako (Shift). W przypadku tego argumentu musimy wprowadzić argument jako „XLUP”.

Kod:

Sub XLUP_Example () Range („A5: B5”). Delete shift: = xlUp End Sub


Teraz możesz uruchomić ten kod ręcznie lub za pomocą klawisza skrótu programu Excel F5, aby zobaczyć wynik.

Jak widać w Tabeli 1, mamy wiersz numer 6 przesunięty do piątego wiersza, az drugiej strony Tabela, 2 wiersz (kolorowy) jest niezmieniony, więc używając opcji „VBA XLUP” możemy wykonać tę operację .

Przykład # 2 - Znajdź ostatnio używany wiersz za pomocą XLUP

Wyobraź sobie sytuację, w której znajdujesz się w komórce A20 (spójrz na poniższy obrazek), a ostatnio używaną komórką jest komórka A14.

Teraz, jeśli chcesz wybrać ostatnio używaną komórkę (A14), jak zrobisz to za pomocą klawisza skrótu ???

Chcemy użyć Ctrl + Strzałka w górę klawisz, aby przejść do ostatniej używanej komórki od aktualnej pozycji.

Klawisz skrótu do przejścia do ostatnio używanej komórki

Tak więc z bieżącej komórki Ctrl + strzałka w górę wybrała ostatnio używaną komórkę. Podobnie w kodowaniu VBA używamy END (XLUP), aby wykonać to samo.

Teraz wróć do okna kodowania VBA.

In this window, we will perform the task of finding the last used row in the worksheet. Create a new subprocedure in the VBA window.

Code:

Sub XLUP_Example1() End Sub

To store the last used row number. define the variable as the VBA LONG data type.

Code:

Sub XLUP_Example1() Dim Last_Row_Number As Long End Sub


Now for this variable, we will assign the last used row number.

Code:

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

Now use the RANGE object and open this object.

Code:

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

Now mention the active cell (A20) for RANGE object.

Code:

Sub XLUP_Example1() Dim Last_Row_Number As Long Range("A14").Select Last_Row_Number = Range("A20") End Sub

Now open END property for supplied range cell.

Code:

Sub XLUP_Example1() Dim Last_Row_Number As Long Range("A14").Select Last_Row_Number = Range("A20").End( End Sub

As you can see above, we have to arrow key options like “xlDown,” “xlToLeft,” “xlToRight,” “xlUp.” Since we are moving up from the A14 cell, choose the “VBA XLUP” option.

Code:

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


After moving up from A14 cell, we need to mention what we need to do since we need the last used row number, I will use ROW property.

Code:

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

Now for the message box, assign the value of variable “Last_Row_Number.”

Code:

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


Now you can run this code manually or through shortcut key F5 to see the result.

So message box showing the last used row number as 14, so our last data used row number is A14 cell.

In this case, since the data is very small, we started the room cell, but when the data is large, we cannot say which cell to take into consideration first. In such cases, we need to employ a different technique.

We need to use CELLS property. Below is an example of the same.

Code:

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

Now you can run this code manually or through shortcut key F5 to see the result.

Zamiast obiektu RANGE użyłem właściwości CELLS. Pozwól, że wyjaśnię ci to szczegółowo.

ROW.COUNT to policzy, ile wierszy jest w kolumnie 1. To co zrobi, to weźmie pod uwagę ostatnią komórkę w arkuszu zamiast losowego adresu komórki. W powyższym przypadku użyliśmy A14 jako losowego adresu komórki.

Rzeczy, o których należy pamiętać o VBA XLUP

  • XLUP to słowo używane w kodzie VBA w celu odtworzenia działania klawisza „Strzałka w górę” w programie Excel.
  • VBA XLUP służy do przechodzenia z aktywnych komórek do powyższej komórki lub ostatnio używanej komórki.
  • XLUP jest zwykle używany wraz z właściwością END w języku VBA.

Interesujące artykuły...