• 締切済み

エクセルのデータ結合について

エクセルのB列に1~1000までの数字がランダムに500個入っています。 エクセルのC列にも1~1000までの数字がランダムに500個入っています。 同様の列が10行あります。 (B列以降には入っている数字と入っていない数字があります) A列には、1~1000までの数字が順番どおりに全て並んでいます。 次のような感じです。 (並べ替え前の文字列) A  B  C  D・・・  1  3   2  6 2  1   4  5 3  5   5  1 4  6   3 5        6       これを、下の列のように、B列以降の列の数字を並べ変えたいのですが、エクセルはこのような各行の並べ替えはできますでしょうか? 方法がありましたらご教示頂ければ幸いです。 よろしくお願いいたします。 (並べ替え後の文字列) A  B  C  D・・・  1  1     1 2     2 3  3   3 4     4 5  5   5  5 6  6     6

みんなの回答

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.4

No.3です。 何度もごめんなさい。 先ほどの回答で、行方向のダブルクリックはダメでした。 オートフィルで行方向もコピーしてください。 どうも失礼しました。m(__)m

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! すでに回答は出ていますが・・・ 他の方法の一例です。 ↓の画像の F1セルに =IF(ISERROR(INDEX(A:A,MATCH(ROW(),A:A,0))),"",INDEX(A:A,MATCH(ROW(),A:A,0))) という数式をいれて、列方向と行方向にオートフィルでコピーすると F~I列のような表示が出来ると思います。 (数字の重複がない事が前提です。) 質問では列方向が10列ということなので まず列方向にオートフィルでコピーしたあとに 1行目のすべてのセルを範囲指定し、 オートフィルの(+)マークのハンドルでダブルクリックすれば 希望に近い形にならないでしょうか? 以上、参考になれば幸いです。m(__)m

mikego
質問者

お礼

図を作成してのご回答、ありがとうございました。

noname#235092
noname#235092
回答No.2

No.1の方の回答を見てなるほどなあと思いました。 そこでZ1に入力する関数を下記のように修正すれば、あとはこの関数を下へ1000まで、右へ必要な列まで複写すれば完璧のようです。 =IF(COUNTIF(B$1:B$6,$A1)=1,$A1,"") 「$」をどこにつけるかを少し変更してみました。

mikego
質問者

お礼

ご回答ありがとうございました。 $記号の使い方も勉強になりました。

  • laputart
  • ベストアンサー率34% (288/843)
回答No.1

B列以降に数字の重複がない場合は例えばB列の並び替えを Z列に書くとして Z1 には =IF(COUNTIF($B$1:$B$1000,$A1)=1,A1,"") とします。 B1からB1000の中にA1と同じ数字がある場合Z1にA1と同じ数字を書く 層でない場合は何も書かないということになります。

mikego
質問者

お礼

詳しい解説をありがとうございます。 おかげさまで問題を解決できました。

専門家に質問してみよう