|I can't see your data from here, so it's a little hard to determine what's going on.|
As per your OP "I am hoping the macro will stop when it detects the first cell (row) in column 'A' that does not contain any record."
If you have an empty cell in Column A anywhere in your data, the code will only delete data above that empty cell.
In other words, If you have data in A5:A16, an empty cell in A17 and data in A18:21, the code will delete A5:A16 because it stops when it gets to A17, which is empty.
Is that not what's happening and/or is that not what you want?