MS Access operates on unordered data sets and, as such, you cannot rely upon the order of records returned by a query, or the order in which data is imported into a table from an external source such as a spreadsheet or text file.
You can only rely on the order of records returned by a query when the ordering is strictly defined with the inclusion of an order by clause.
Therefore, if you wish to continue to use the TransferSpreadsheet method for your task, you will need to determine a method of identifying the records to be omitted which is independent of the order of the imported records. This way, you can import all records into your table and then run a delete query implementing the record identifying logic as its selection criteria.
The only other way that I can see to achieve this would be to interface with the Excel worksheet from MS Access using ActiveX, iterate over the rows in the worksheet, and populate a recordset whilst omitting the first three rows encountered.