Hi Carl,
in cell A1 of the second sheet:
=IF(ROW()-ROW($1:$1)+1>COUNTIF('Sheet(1)'!$A$1:$A$4,"<0"),"",INDEX('Sheet(1)
'!$A$1:$A$4,SMALL(IF('Sheet(1)'!$A$1:$A$4<0,ROW('Sheet(1)'!$A$1:$A$4)-CELL("
ROW",'Sheet(1)'!$A$1:$A$4)+1),ROW()-ROW($1:$1)+1)))
as an array formula (hold Ctrl+Shift when you press Enter).
Of course 'Sheet(1)'!$A$1:$A$4 should be changed to reflect the actual
location of your data.
If you need the result in a different cell to A1 change ROW($1:$1) to refer
to the row that you type it into. For instance if you need it in D4 use:
=IF(ROW()-ROW($4:$4)+1>COUNTIF('Sheet(1)'!$A$1:$A$4,"<0"),"",INDEX('Sheet(1)
'!$A$1:$A$4,SMALL(IF('Sheet(1)'!$A$1:$A$4<0,ROW('Sheet(1)'!$A$1:$A$4)-CELL("
ROW",'Sheet(1)'!$A$1:$A$4)+1),ROW()-ROW($4:$4)+1)))
In the next cell (B1 for my example) use:
=IF(A1="","",VLOOKUP(A1,'Sheet(1)'!$A$1:$B$4,2,0))
which is not an array formula.
This assumes that all of the negative numbers in your list are unique.
Otherwise you can use:
=IF(A1="","",INDEX('Sheet(1)'!$B$1:$B$5,SMALL(IF('Sheet(1)'!$A$1:$A$5<0,ROW(
'Sheet(1)'!$A$1:$A$5)-CELL("ROW",'Sheet(1)'!$A$1:$A$5)+1),ROW()-ROW($1:$1)+1
)))
which is an array formula.
Now copy A1:B1 down as far as necessary.
Steve D.