One simple formulas setup which will achieve it for you ..
With source data in A1:B1 down as per your post
In D1: =IF(B1="","",ROW())
In E1: =IF(ROW()>COUNT($D:$D),"",INDEX(A:A,SMALL($D:$D,ROW())))
Copy E1 to F1. Select D1:F1, copy down to cover the max expected extent of
source data, say down to F100? Minimize/hide col D. Cols E & F will return
the required dynamic results neatly packed at the top, ie only the names &
"values" from cols A & B where col B isn't blank.
And if your source data starts in row2 down (instead of row1)
use this set of point formulae instead
In D2: =IF(B2="","",ROW())
Leave D1 empty
In E2:
=IF(ROWS($1:1)>COUNT($D:$D),"",INDEX(A:A,SMALL($D:$D,ROWS($1:1))))
You got it up and going over there?
High-five it here, click the YES button below
P/s: Btw, think you should have replied/clarified further to Shane in your
earlier thread instead of starting a new thread here, with ensuing
discussions continuing from thereof. That's the naturally efficient &
courteous way to engage the many helpful responders.
--
Max
Singapore
http://savefile.com/projects/236895
Downloads:25,000 Files:300 Subscribers:70
xdemechanik