- ベストアンサー
エクセルで行を比較して結果を獲る
宜しくお願いします。 A列、B列、C列それぞれの列に200~250行のデータ(データは6~7桁の数字)があります。 で...このデータを列ごとに比較して求めたいのが、 *A列にあって、B列とC列にないデータの値 *B列にあって、A列とC列にないデータの値 の2点の条件をクリアするデータのリストを作りたいのですが、(リストはD列でもどこでも構いません) どの様にしたら求めれるでしょうか? VBAはあまり自信がありませんが少しかじってますので、最悪はVBAでもいいので宜しくお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは! 簡略的な方法 データ範囲がA2:C250として *A列にあって、B列とC列にないデータの値 D1に"A列非重複データ” D2に =IF(AND(ISERROR(MATCH(A2,B$2:B$250,0)),ISERROR(MATCH(A2,C$2:C$250,0))),A1,"") と入力後 D250まで複写 E1に"B列非重複データ” E2に =IF(AND(ISERROR(MATCH(B2,A$2:A$250,0)),ISERROR(MATCH(B2,C$2:C$250,0))),B1,"") と入力後 E250まで複写 D2:E250を選択 コピー 同位置で 編集 形式を選択して貼り付け 「値」 OK D列のみで ソート E列のみで ソート
その他の回答 (1)
- tyom77
- ベストアンサー率57% (68/119)
あまり効率はよくないかもしれませんが、以下の方法はいかがでしょうか? 1.まず1行目はタイトル用の行にします。行の比較用にD列、E列、F列を使用します。 2.D、E、Fの列のタイトルを仮にAB、BC、CAと命名します。 ここでABというのは、A列とB列を比較した結果と言う意味です。 3.ABの列の2行目に=IF(A2=B2,"○","×")を入力 BCの列の2行目に=IF(B2=C2,"○","×")を入力 CAの列の2行目に=IF(C2=A2,"○","×")を入力 IF関数を使って比較します。値の一致の時は○、不一致の時は× 4.オートフィル機能を使って3行目以降に3で入力したものをコピー 5.A1セルの左上にある灰色の空白をクリック 6.メニューバーから【データ】→【フィルタ】→【オートフィルタ】を選択。 そうすると、1行目のセルのとなりに▼がでてくると思います。 7.A列にあって、B列とC列にないデータの値を求めます。これは、ABとCAがともに×を抽出すればいいですよね? 8.AB、CAの▼をクリックして2つの列それぞれ×を選択。すると、A列にあって、B列とC列にないデータの値がでてくると思います。 9.でてきたものをコピーして空いてるセルか別シートにコピー。 10.あとはコピーしたものからB列にあって、A列とC列にないデータの値をとります。これについては、1から8の作業をすれば条件にあうものがでてくると思います。 私はVBAとかはあまり知らないので、この方法しか思いつきませんでした。
お礼
tyom77さん!ありがとうございました。 お礼がおそくなってすみません!
お礼
Comvさん! ありがとうございました。何をするにでも、VBAでなくても手段はいっぱいありそうですね! 本当に助かりました。 お礼がおそくなってすみませんでした。