Since I can't add a "Comment" yet due to reputation, I have to write here.
Writing this in Immediate window:
?Cells(Rows.Count, 1).End(xlUp).Row
Filtered data in pure Sheet cells: Will show last filtered ROW with data (doesn't show hidden row number)
Filtered data in "Table": Shows last ROW of data like there is no filter (shows hidden row number)
So yes "table" would be better solution for your needs.
But my need is opposite of his, I need last "filtered" row on "Table"!? Is there any simple solution like this?