I googled a lot and found a lot of different solutions, but I need to improve the one I'm using now.
I want to find the last used column in the sheet using the find method not to consider the deleted cells.
All I want is to get the last column used, including the one in the row of the starting cell. In the image below if I use my code it will give last column = 4, because in the 2nd row data stops at column 4. Why isn't it giving 5 (header column) as result?
Thank you!!
With ActiveSheet If Application.WorksheetFunction.CountA(.Cells) <> 0 Then findlastcol = .Cells.Find(What:="*", _ After:=.Range("A1"), _ LookAt:=xlPart, _ LookIn:=xlFormulas, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlPrevious, _ MatchCase:=False).Column Else findlastcol = 1 End If End With Example Table screenshot
+---------+---------+---------+---------+---------+ | Header1 | Header2 | Header3 | Header4 | Header5 | +---------+---------+---------+---------+---------+ | Data | Data | Data | Data | | +---------+---------+---------+---------+---------+