The simplest approach in that case would be to use the Find function to find 'blank' in the column of interest, get it's row and deduct 1:
Code:
Dim LastRow As Long
LastRow = 0
On Error Resume Next
LastRow = ActiveSheet.Range("Q:Q").Rows.Find("blank").Row - 1
MsgBox LastRow