VBA Last Row | 3 mètodes principals per trobar l'última fila utilitzada?

A VBA, quan hem de trobar l’última fila, hi ha molts mètodes diferents i el mètode més utilitzat és el mètode End (XLDown) i hi ha altres mètodes, com ara trobar l’últim valor mitjançant la funció find a VBA, End (XLDown) ). La fila és la manera més senzilla d’arribar a l’última fila.

Excel VBA última fila

Si escriure el codi és el primer progrés que heu fet a VBA, llavors el dinamitzar el codi és el següent pas. Excel està ple de referències de cel·les, en el moment que ens referim a la cel·la, es fixa. Si augmenten les nostres dades, hem de tornar a la referència de cel·la i canviar les referències per actualitzar el resultat.

Per obtenir un exemple, mireu el codi següent.

Codi:

 Sub Last_Row_Example1 () Range ("D2"). Value = WorksheetFunction.Sum (Range ("B2: B7")) End Sub 

El codi anterior diu que el valor de la cel·la D2 ha de ser la suma de l'interval ("B2: B7").

Ara afegiré més valors a la llista.

Ara, si executo el codi, no em donarà el resultat de les actualitzacions, sinó que encara queda en l’interval anterior, és a dir, Interval (“B2: B7”).

Aquí és on el codi dinàmic és molt important.

En el procés de dinamització del codi, és molt important trobar la darrera fila utilitzada a la columna. En aquest article, analitzarem les maneres de trobar l’última fila a Excel VBA.

Com es pot trobar l'última fila utilitzada a la columna?

A continuació es mostren els exemples per trobar l’última fila utilitzada a Excel VBA.

Podeu descarregar aquesta plantilla VBA Last Row aquí: plantilla VBA Last Row

Mètode núm. 1

Abans d’explicar-vos el codi, vull que recordeu com aneu a l’última fila del full de treball normal.

Utilitzarem la tecla de drecera Ctrl + fletxa avall.

Ens portarà a l'última fila utilitzada abans de qualsevol cel·la buida. També utilitzarem el mateix mètode a VBA per trobar l’última fila.

Pas 1: Definiu la variable com a LLARGA.

Codi:

 Sub Last_Row_Example2 () Dim LR Long 'Per comprendre LR = Última fila de final Sub 

Pas 2: Per a aquesta variable, assignarem l’últim número de fila utilitzat.

Codi:

 Sub Last_Row_Example2 () Dim LR Long 'Per entendre LR = Última fila LR = Final Sub 

Pas 3: Escriviu el codi com CELLS (Files. Count,

Codi:

 Sub Last_Row_Example2 () Dim LR As Long 'Per entendre LR = Última fila LR = Cel·les (Rows.Count, End Sub 

Pas 4: Ara mencioneu el número de columna com a 1.

Codi:

 Sub Last_Row_Example2 () Dim LR Long 'Per entendre LR = Última fila LR = Cel·les (files.Count, 1) Final Sub 

CELLS (Rows.Count, 1) significa comptar quantes files hi ha a la primera columna.

Per tant, el codi VBA anterior ens portarà a l’última fila del full Excel.

Pas 5: Si som a l'última cel·la del full per anar a l'última fila utilitzada, prémerem la tecla de drecera com Ctrl + Fletxa amunt clau.

A VBA hem d’utilitzar la tecla final i cap amunt, és a dir, Finalitzar VBA xlUp

Codi:

 Sub Last_Row_Example2 () Dim LR Long "Per entendre LR = Última fila LR = Cel·les (Rows.Count, 1). Final (xlUp) End Sub 

Pas 6: Ara ens portarà a la darrera fila utilitzada des de la part inferior. Ara necessitem el número d'aquesta fila. Per tant, utilitzeu la propietat ROW per obtenir el número de fila.

Codi:

 Sub Last_Row_Example2 () Dim LR As Long 'Per entendre LR = Última fila LR = Cel·les (Rows.Count, 1). Final (xlUp). 

Pas 7: Ara la variable conté l'últim número de fila utilitzat. Mostra el valor d'aquesta variable al quadre de missatge del codi VBA.

Codi:

 Sub Last_Row_Example2 () Dim LR As Long 'Per entendre LR = Última fila LR = Cel·les (Rows.Count, 1). Final (xlUp). Fila MsgBox LR End Sub 

Executeu aquest codi amb la tecla F5 o manualment, es mostrarà l'última fila utilitzada.

Sortida:

La darrera fila utilitzada en aquest full de càlcul és 13.

Ara eliminaré una línia més i executaré el codi i veuré el dinamisme del codi.

D'acord, ara el resultat passa automàticament a l'última fila.

Això és el que és el codi de l'última fila VBA dinàmic.

Com he mostrat a l'exemple anterior, canvieu el número de fila d'un valor numèric a LR.

Codi:

 Sub Last_Row_Example2 () Dim LR Long 'Per entendre LR = Última fila LR = Cel·les (Rows.Count, 1). Final (xlUp). Range de fila ("D2"). Valor = WorksheetFunction.Sum (Range ("B2: B "i LR)) Final Sub 

He eliminat B13 i he afegit el nom de variable LR.

Ara no importa quantes files afegiu i prendrà automàticament la referència actualitzada.

Mètode 2

També podem trobar l’última fila a VBA també mitjançant l’objecte Range i les propietats de cel·les VBA especials.

Codi:

 Sub Last_Row_Example3 () Dim LR As Long LR = Range ("A: A"). SpecialCells (xlCellTypeLastCell). Row MsgBox LR End Sub 

El codi també us proporciona l'última fila utilitzada. Per exemple, mireu la imatge del full de treball següent.

Si executo el codi manualment o amb la tecla F5, el resultat serà 12 perquè 12 és l'última fila utilitzada.

Sortida:

Ara eliminaré la 12a fila i veuré el resultat.

Tot i que he esborrat una fila, continua mostrant el resultat com a 12.

Per tal de fer funcionar aquest codi, hem de prémer el botó Desa després de cada acció. Aquest codi retornarà resultats exactes.

He desat el llibre i ara veig el resultat.

Mètode 3

Podem trobar l’última fila VBA a l’interval utilitzat. A sota del codi també es retorna l'última fila utilitzada.

Codi:

 Sub Last_Row_Example4 () Dim LR As Long LR = ActiveSheet.UsedRange.Rows (ActiveSheet.UsedRange.Rows.Count) .Row MsgBox LR End Sub 

Això també retornarà l'última fila utilitzada.

Sortida: