If there's one column that has ALL values, I'd import it in MS Access, then define select-distinct-queries on all columns and make a query based on that column with an outer join to all other columns.
If there's no such column it's somewhat more difficult (but still doable using a union query to make the 'base' table).
The total operation can be programmed in one macro with three steps in MS Access (assuming the 2007 version still has macro's): empty the table, import from workbook and run the query.
That's far easier than writing your own code in VBA in Excel to do this.
But it can be done in Excel also, I think. Define a shadow worksheet with the 'full' column copied, and all other columns containing a VLOOKUP-formula (maybe surrounded by an IF) that checks if value in the cell in that row in the full column happens to exist in the corresponding column of the original worksheet. No VBA, no macro's, no sorting (except maybe the full column in the original sheet), no procedures, just formulas; that's the proper way to use Excel.
Hope this helps.
Kees
I frequently work with worksheets where I have several columns of data from different sources,in different order and not all inclusive ie column A and B may have 30 items and column C and D may have 60 items that include the 30 items in A & B. What I need to do is sort columns A & B to match up, line by line with like items in C & D obviously leaving blank rows in A & B. A macro would be great but just a procedure would be very helpful.

Chowhound
Comic Vine
GameFAQs
GameSpot
Giant Bomb
TechRepublic