I do not think there is built in Excel function, or extension, to do this.
You might want to check out this Source Forge page, http://zips.sourceforge.net/
- It provides a CSV dataset to convert Zip Codes to Lat/Long (center point presumably)
- It provides Excel code to calculate the "crow flies" distance between two lat/long coordinates. (and includes equivalent code for Java, PHP and Python.
The Excel function is
=IF(SIN(Lat1) * SIN(Lat2) + COS(Lat1) * COS(Lat2) * COS(Long1 - Long2) > 1,
RadiusofEarth * ACOS(1), RadiusofEarth *
ACOS(SIN(Lat1) * SIN(Lat2) + COS(Lat1) * COS(Lat2) * COS(Long1-Long2)))
The page notes that the angles have to be in Radians and that Excel has a degrees to Radians conversion function:
=RADIAN(degrees)
Unless someone else has a slicker answer, this should get you what you want without too much work.