A family of Microsoft spreadsheet software with tools for analyzing, charting, and communicating data.
on the menu ribbon select the data tab, then select filter.
then on the home address column only show non blank cells.
then copy the records to another sheet.
then set the filter to show all, then move to filtering the next criteria and copy the filtered data into another sheet and so on until you have copied all records that contain complete records for each home address, billing address, work address, and PO Box address.
now you have four lookup tables for each criteria.
next normalize all the names where you only have one instance for each name and put those name in its own sheet, this sheet is where you will be putting your formula to lookup the name in the home address lookup table first if it exists, then so on and so forth until all records are normalized.
yes it is labor intensive, but once you have normalized this data, it can then be stored in a relational database (if this is a long term endeavor) where if you would ever need to do this exercise again all you would have to do is to create a query :)
if you had thousands of rows of data writing vba code would be better, but for 150 rows of data manually doing it is less of a headache even for someone who is an expert writing vba code.