Come trovare l'ultima riga, colonna e cella?
Per trovare l’ultima riga, colonna o cella, puoi utilizzare la proprietà “Fine” dell’intervallo. La proprietà end ti consente di navigare fino alla fine dell’intervallo di dati (fino all’ultima cella che non è vuota). Con questo, ci sono costanti che puoi usare per decidere in quale direzione vuoi navigare (su, giù, sinistra o destra).
Utilizza VBA per trovare l’ultima riga in Excel
- Imposta la cella o l’intervallo da cui desideri navigare fino all’ultima riga.
- Successivamente, inserisci un punto per ottenere l’elenco di proprietà e metodi.
- Seleziona o digita “Fine” e inserisci una parentesi iniziale.
- Usa qualunque argomento tu voglia usare.
- Inoltre, utilizza la proprietà address per ottenere l’indirizzo della cella.
MsgBox Range("A1").End(xlDown).Address
Quando esegui il codice sopra, ti mostra una finestra di messaggio con il numero di riga dell’ultima cella non vuota.
Trova l’ultima colonna usando VBA
Ora diciamo che vuoi trovare l’ultima colonna. In questo caso, invece di usare la costante “xlDown”, dovresti usare “xlRight”, e se vuoi selezionare quella cella invece di avere l’indirizzo, puoi usare il metodo “select”. Considera il seguente metodo.
Range("A1").End(xlToRight).Select
Trova l’ultima cella
Utilizzando lo stesso metodo puoi anche ottenere l’ultima cella che è una cella non vuota. Per scrivere questo codice, devi conoscere l’ultima riga e l’ultima colonna.
Sub vba_last_row() Dim lRow As Long Dim lColumn As Long lRow = Range("A1").End(xlDown).Row lColumn = Range("A1").End(xlToRight).Column Cells(lRow, lColumn).Select End Sub
Per comprendere il codice sopra, dobbiamo dividerlo in tre parti.
- Nella PRIMA parte, hai dichiarato due variabili per memorizzare il numero di riga e il numero di colonna.
- Nella SECONDA parte, hai usato “End” con la “xlDown” poi la proprietà Row per ottenere il numero di riga dell’ultima, e allo stesso modo hai usato “End” con la “xlToRight” poi la proprietà “Colonna” per ottenere il numero di colonna dell’ultima colonna.
- Nella TERZA parte, utilizzando l’ultimo numero di colonna e l’ultimo numero di riga, fare riferimento all’ultima cella e selezionarla.
Nota: se desideri selezionare una cella nei diversi fogli di lavoro utilizzando il metodo dell’ultima riga e dell’ultima colonna, devi prima abilitare quel foglio di lavoro .
Ultima riga, colonna e cella utilizzando il metodo Trova
Puoi anche utilizzare il metodo find con l’oggetto range per ottenere l’ultima riga, colonna e cella del foglio di lavoro. Per trovare il numero di riga, ecco il codice:
Sub vba_last_row() Dim iRow As Long iRow = Cells.Find(What:="*", _ After:=Range("A1"), _ LookAt:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Row MsgBox iRow End Sub
Per il numero di colonna:
Sub vba_last_row() Dim iColumn As Long iColumn = Cells.Find(What:="*", _ After:=Range("A1"), _ LookAt:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Column MsgBox iColumn End Sub
Per ottenere l’indirizzo dell’ultima cella.
Sub vba_last_row() Dim iColumn As Long Dim iRow As Long iColumn = Cells.Find(What:="*", _ After:=Range("A1"), _ LookAt:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Column iRow = Cells.Find(What:="*", _ After:=Range("A1"), _ LookAt:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Row Cells(iRow, iColumn).Address End Sub