質問: excelでデータのグループ化をして整理したい 以下のように縦にならんだ数字を 1 14 14 35 35 35 35 14 14 14 2 2 2 2 1 グループ化して「順番をかえずに」以下のように並べたいです。 1 14 35 14 2 1 このようにできる関数かなにかありますか? ピボットテーブルやオートフィルタを試してみたのですが、 1,2,14,35 のように、小さい順にならびかわってしまいます。。。 よろしくお願いします!
回答: >このようにできる関数かなにかありますか? 関数ですから、別のセルに抽出、表示してもよいですね。 元のデータが100行目まであるとして =index(a:a,small(index(substitute(not(exact($a$1:$a$100,$a$2:$a$101))*1,0,10^5)*row($a$1:$a$100),),row(z1))) を同じシートの適当なセルに貼り付けて下方向にコピーしてください ただしこの式は表示するデータがないと#ref!エラーになります。 エラー表示しないようにするには以下のようにif文を追加します =if(row(z1)<=sumproduct(not(exact($a$1:$a$100,$a$2:$a$101))*1),index(a:a,small(index(substitute(not(exact($a$1:$a$100,$a$2:$a$101))*1,0,10^5)*row($a$1:$a$100),),row(z1))),"") 範囲を修正するときは「exact($a$1:$a$100,$a$2:$a$101)」の部分(2カ所あります)でセル範囲が「$a$1:$a$100」,「$a$2:$a$101」と一行ずれていることに注意してください