VBA XLUP | Cum se utilizează VBA XLUP în Excel? (cu exemple)

Excel VBA XLUP

Un lucru pe care trebuie să-l țineți cont în timp ce scrieți codul VBA este ceea ce faceți cu foaia de lucru obișnuită și puteți replica același lucru și în VBA. Un astfel de cuvânt cheie în codarea VBA este „XLUP”, în acest articol vă vom arăta ce este acest cuvânt cheie în codarea VBA și cum să îl utilizați în codificare.

Cum se utilizează VBA XLUP în codificare?

Următoarele sunt exemple de excel VBA XLUP.

Puteți descărca acest șablon Excel VBA XLUP aici - Șablon Excel VBA XLUP

Exemplul 1 - Mutați celulele în poziția ștearsă a celulelor

De exemplu, uitați-vă la scenariul datelor de mai jos, unde trebuie să ștergeți datele acelor celule colorate și mai sus datele rândurilor de mai jos la datele de mai sus.

O modalitate de a șterge acest lucru în foaia de lucru este de a selecta acele celule în care putem șterge pur și simplu întregul rând. Dar situațiile aici sunt puțin dificile, deoarece am celule colorate în Tabelul 1 atunci când ștergem întregul rând, chiar și rândurile din Tabelul 2 sunt șterse, dar nu vrem să se întâmple acest lucru, trebuie doar să ștergem rândurile colorate și celulele de mai jos ar trebui să se miște poziția celulelor șterse.

Mai întâi, selectați celulele colorate și apăsați Ctrl + Simbol Minus (-) pentru a deschide opțiunea „Ștergeți”.

Comandă rapidă pentru a deschide opțiunea „Șterge”

În fereastra de opțiuni „ștergeți”, avem patru opțiuni, putem alege acțiunea conform cerințelor noastre. Întrucât trebuie să ne deplasăm celulele în sus pentru pozitivul acelor celule șterse, alegeți „Shift Cell Up”.

Vom avea tabelul 2 rânduri neschimbate.

Această acțiune în VBA necesită utilizarea proprietății „XLUP” pentru a efectua un set similar de acțiuni în VBA. Acum ajungeți la fereastra editorului VBA și începeți numele macrocomenzii.

Cod:

 Sub XLUP_Example () End Sub 

Mai întâi furnizați celula RANGE pentru a fi inclusă în această operațiune. În această acțiune, primele celule care trebuie șterse și mutate în sus sunt celulele „A5: B5”.

Cod:

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

Pentru acest interval de celule selectați metoda „Ștergeți”.

Cod:

 Sub XLUP_Example () Range ("A5: B5"). Ștergeți Sub Sub 

După cum puteți vedea pentru metoda „Ștergeți”, avem un argument opțional ca [Shift], pentru acest argument trebuie să introducem argumentul ca „XLUP”.

Cod:

 Sub XLUP_Example () Range ("A5: B5"). Ștergeți shift: = xlUp End Sub 

Acum puteți rula acest cod manual sau prin comanda rapidă a tastei excel F5, pentru a vedea rezultatul.

După cum puteți vedea în Tabelul 1, avem rândul 6 mutat în rândul 5 și, pe de altă parte, Tabelul, 2 rânduri (colorate) este nealterat, deci folosind opțiunea „VBA XLUP” putem face această operațiune.

Exemplul # 2 - Găsiți ultimul rând folosit folosind XLUP

Imaginați-vă o situație în care vă aflați în celula A20th (uitați-vă la imaginea de mai jos) și ultima dvs. celulă utilizată este A14.

Acum, dacă doriți să alegeți ultima celulă utilizată (A14). cum te vei descurca folosind o tastă de comandă rapidă ???

Am folosi Ctrl + tasta săgeată sus pentru a ne deplasa la ultima celulă utilizată din poziția curentă.

Comandă rapidă pentru a trece la ultima celulă utilizată 

Deci, din celula curentă, Ctrl + Săgeată în sus a selectat ultima celulă utilizată. În mod similar, în codarea VBA folosim END (XLUP) pentru a efectua același lucru.

Acum reveniți la fereastra de codare 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 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 data is very small we started from A20 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 the 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.

Instead of a RANGE object, I have used CELLS property. Let me explain this in detail to you.

ROW.COUNT this will count how many rows are there in column 1. What this will do is it will take into consideration of the last cell in the worksheet instead of random cell address, in the above case we have used A14 as the random cell address.

Things to Remember about VBA XLUP

  • XLUP is the word used in VBA code to replicate the action of the “Up Arrow” key in excel.
  • VBA XLUP is used to move from active cells to the above cell or last used cell.
  • XLUP is generally used along with END property in VBA.