質問: excel: vlookup, index & match 関連 別シートから締切日をc列にlarge関数で並べました。ただ、何の締切日かもb列に表示させたいです。締切日をキーにして拾ってくると、同じ締切日の箇所全てに同じ項目が並んでしまいます。解決策お願い致します。 a2=1, c2=large('[abc.xls]abc'!$t$6:$t87,$a2)=2006/6/31 a3=2, c3=large('[abc.xls]abc'!$t$6:$t87,$a3)=2006/6/30 a4=3, c4=large('[abc.xls]abc'!$t$6:$t87,$a4)=2006/6/30 a5=4, c5=large('[abc.xls]abc'!$t$6:$t87,$a5)=2006/6/30 a6=5, c6=large('[abc.xls]abc'!$t$6:$t87,$a6)=2006/6/29 失敗例 b2=index('[abc.xls]abc'!e6:e87,match(c2,'[abc.xls]abc'!t6:t87,false))
回答: rank関数を使用して、別シートに入力したリストに順番をつけて、その順番でソートすれば期待するものは得られませんか 別シート a1 締めきりの内容 b1 締め切り日 c1 =rank(b2,b:b,1) c列で昇順にソート(並べ替え)して、もう一方のシートには (a2の内容) = 別シート!a1 (b2の内容) = 別シート!b1 (a3の内容) = 別シート!a2 (b3の内容) = 別シート!b2 毎回ソートが面倒ならソートの所だけマクロ化しても良いと思います