Steve,
The posting of the returned data on 60 rows in columns "G:I" doesn't sound right, somehow. Maybe that could be posted on a separate sheet and used as a reference table to populate data in columns "G:I".
For example, at its simplest via VLOOKUP on the serial number. Or otherwise more complex methods.
To be clearer, have one worksheet with columns "A:E". Have a second worksheet with "return data". Populate columns "G:I" on the first worksheet from the "return data" on the second worksheet.
On the "returned data" worksheet you could identify any items that were not found in the first worksheet and highlight them. Items that are shown as returned but not on the list of outgoing items.
BTW, this could be very suitable for use in MS Access or some other database. You could use Excel's SQL abilities to handle the data like a proper database. Depends on your requirements. Then again, maybe I don't correctly understand your requirements.
If you already have some code, can you please post it?
regards,
Fazza