エクセルで画像のようにしたいのですが、なんの関数を使いどのようにしたら良いでしょうか。

画像
補足

IDの数は何千個もあり、一括で作業するためのものです。 知恵袋初めて使うので拙くてすみません。

Excel61閲覧

ベストアンサー

0
画像

ThanksImg質問者からのお礼コメント

ありがとうございました!

お礼日時:10/22 13:52

その他の回答(2件)

0

質問の意味がわからなければすみませんが、そうでなければよろしくお願いいたします。 ということですよね。 MicroSoft365のバージョンにはUNIQUE関数という重複を削除した結果を出す関数があるのですが、それ以前のバージョンにはありません。なので数式が長くなるだけではなく仮にUNIQUE関数を使ったとしてもブックが重くなります。ましてやそれ以前のバージョンではなおさらです。IDが数十個程度なら大丈夫ですが 「何千個もあり」ではマクロで収集するのが適当でしょうね。 マクロは大丈夫ですか

0

お示しの右の表がシート1に有るとします。 A列とB列の表で2行目から下方にお示しのようなデータが並んでいるとします。 作業列を作って対応します。 例えばD2セルにはつぎの式を入力して下方にドラッグコピーします。 =IF(A2="","",IF(COUNTIF(A$2:A2,A2)=1,ROUNDDOWN(MAX(D$1:D1),-3)+1000,IF(COUNTIFS(A$2:A2,A2,B$2:B2,B2)>1,"",ROUNDDOWN(MAX(D$1:D1),-3)+MOD(MAX(D$1:D1),1000)+1))) その後にお求めの右の表をシート2に作ることにします。 シート2のA2セルにはつぎの式を入力し横方向にドラッグコピーしたのちに下方にもドラッグコピーします。 =IFERROR(IF(COLUMN(A1)=1,INDEX(Sheet1!$A:$A,MATCH(ROW(A1)*1000,Sheet1!$D:$D,0)),INDEX(Sheet1!$B:$B,MATCH(ROW(A1)*1000+COLUMN(A1)-2,Sheet1!$D:$D,0))),"") なお、シート1の作業列が目障りでしたらその列を選択して「非表示」にすればよいでしょう。