How to find the last row or column with data in Excel?
In a large worksheet, if you want to determine the last row or column which contains values quickly and easily, you just can drag the scrollbar to find it. But it will be painful if there are thousands of data rows in your worksheet. In this article, I will talk about some useful VBA code for you to solve this task.
Recommended Productivity Tools for Excel
Office Tab: Bring powerful tabs to Office (include Excel), just like Chrome, Safari, Firefox and Internet Explorer. Save you half the time, and reduce thousands of mouse clicks for you. 30-day Unlimited Free Trial
Kutools for Excel: Save 71% of your time and solve 82% Excel problems for you. 300+ advanced tools designed for 1500+ work scenario, make Excel much easy and increase productivity immediately.60-day Unlimited Free Trial
Most of us may be consider of locating the last cell by pressing Ctrl +End keys to find the last row and column, but the shortcut key will not locate the accurate value cell if there are some cells that have formatting below the data range. So here, please use the following VBA code:
1. Activate your worksheet which you want to determine the last row or column with data.
2. Hold down the ALT + F11 keys to open the Microsoft Visual Basic for Applications window.
3. Then click Insert > Module, and paste the following code in the Module Window.
VBA code: Find last row with data
Sub sblastRowOfASheet() 'Update 20140603 Dim xLastRow As Long xLastRow = Application.ActiveSheet.Cells.SpecialCells(xlLastCell).Row MsgBox "Last Used Row: " & xLastRow Do While Application.CountA(ActiveSheet.Rows(xLastRow)) = 0 And xLastRow <> 1 xLastRow = xLastRow - 1 Loop MsgBox "Last Row with Data: " & xLastRow End Sub
4. And then press F5 key to run this code, and prompt box will pop out to tell you the row number of the used range. See screenshot:
5. Go on clicking OK button, this time the last row number with values has been displayed as following screenshot shown:
Note: To find the last column with data, please apply this code:
VBA code: Find last column with data
Sub sblastcolumnOfASheet() 'Update 20140603 Dim xLastcolumn As Long xLastcolumn = Application.ActiveSheet.Cells.SpecialCells(xlLastCell).Column MsgBox "Last Used column: " & xLastcolumn Do While Application.CountA(ActiveSheet.Columns(xLastcolumn)) = 0 And xLastcolumn <> 1 xLastcolumn = xLastcolumn - 1 Loop MsgBox "Last column with Data: " & xLastcolumn End Sub
If you want to directly find and select the last row or column with data in Excel, the Select Last Row and the Select Last Column utilities of Kutools of Excel can help you. Please do as follows.
1. After installing Kutools for Excel, if you want to find and select last row with data, please click Kutools > Select > Select Last Cell > Last Row. See screenshot:
Note: For finding and selecting the last column with data, please click Kutools > Select > Select Last Cell > Last Column. See screenshot:
Then the last row or column with data in current worksheet is found and selected immediately.
Kutools for Excel includes more than 300 handy Excel tools. Free to try with no limitation in 60 days. Download the free trial now!