Ok, try this...
Assume:
Long list in the range A2:A329
Short list in the range B2:B163
Create these named ranges...
Goto the menu Insert>Name Define
Name: Llist
Refers to: =$A$2:$A$329
Name: Slist
Refers to: =$B$2:$B$163
Enter this formula in cell D1. This will return the number of matches.
=SUMPRODUCT(--(ISNUMBER(MATCH(Slist,Llist,0))))
Enter this array formula** in D2:
=IF(ROWS(D$2

2)<=D$1,INDEX(Slist,SMALL(IF(ISNUMBER(MATCH(Slist,Llist,0)),ROW(Slist)),ROWS(D$2

2))-MIN(ROW(Slist))+1),"")
** array formulas need to be entered using the key combination of
CTRL,SHIFT,ENTER (not just ENTER). Hold down both the CTRL key and the SHIFT
key then hit ENTER.
Copy down until you get blanks meaning all matches have been extracted.