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 codificarea VBA este „XLUP” din 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.

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 aici, situațiile 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; în schimb, trebuie doar să ștergem rânduri colorate și sub celule ar trebui să se deplaseze în sus 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

În primul rând, 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 intermediul tastei Excel F5 pentru a vedea rezultatul.

După cum puteți vedea în Tabelul 1, avem rândul 6 mutat până la al 5- lea rând ș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), iar ultima dvs. celulă utilizată este A14.

Acum, dacă doriți să alegeți ultima celulă utilizată (A14), cum veți face 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ăgeata 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 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.

În loc de un obiect RANGE, am folosit proprietatea CELLS. Permiteți-mi să vă explic acest lucru în detaliu.

ROW.COUNT acest lucru va conta câte rânduri sunt în coloana 1. Ceea ce va face este că va lua în considerare ultima celulă din foaia de lucru în loc de adresa aleatorie a celulei. În cazul de mai sus, am folosit A14 ca adresă aleatorie a celulei.

Lucruri de reținut despre VBA XLUP

  • XLUP este cuvântul folosit în codul VBA pentru a reproduce acțiunea tastei „Săgeată sus” în excel.
  • VBA XLUP este utilizat pentru a trece de la celulele active la celula de mai sus sau ultima celulă utilizată.
  • XLUP este utilizat în general împreună cu proprietatea END în VBA.

Articole interesante...