人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

excel vlookup関数で、
AのシートのA列にふくまれものがBのシートのA列に
ふくまれていればAのシートの右はしに○を表示、なければ×を
表示させたいのですが、どうVlookupの関数に指定すればよいでしょうか。



Aシート
A1 ○
A2 ○
A3 ×
Bシート
A1
A2



●質問者: pikacyuu
●カテゴリ:コンピュータ
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● うぃんど
●67ポイント

単純に存在をチェックするだけの場合にはMATCH関数を用いると良いでしょう。

=IF(ISNUMBER(MATCH(A1,Bシート!A:A,0)),"○","×")
もしくは
=IF(ISERROR(MATCH(A1,Bシート!A:A,0)),"×","○")

MATCH(A1,Bシート!A:A,0) は、
A1と同じ値がBシートのA列にあれば行番号を返し、
無ければ#N/Aというエラーを返します。

行番号なら○、行番号でなければ×とするのが上の式で、
エラーなら×、エラーにならなければ○とするのが下の式で、
他の式との兼ね合いで使い分ける場面もありますが、
今回の件であれば、どちらを使ってもかまわないように思います。

MATCH関数の動作を知るために、まずは下記を実行して、
それから上にあげたように条件判断させるようにしたほうが良いかもしれませんね。

=MATCH(A1,Bシート!A:A,0)

2 ● gong1971
●67ポイント

Aシートの例えばセルB1に、

=IF(ISNA(VLOOKUP(A1,Bシート!A:A,1,0)),"×","○")

となります。

VLOOKUP関数中の太字の1は、1列目すなわち自分自身を返すという指定になります。

また、ISNA関数は、VLOOKUP関数で目的の値が見付からなかった時の
エラー#N/Aかどうかを判断する関数になります。


3 ● きゃづみぃ
●66ポイント

VLOOKUP関数というのは 作成したリストに一致するデータを取得する関数です。

通常、リストは 以下のように作成します。

1000 aaaa
2000 bbbb
3000 cccc

たとえば 値が 1000だったら aaaaを取得させる というようなものです。

これが aaaaではなく ○だったら 1000があれば ○を取得するということになります。

つまり、BのシートのA列のとなりのB列に すべて ○をつけておけば
一致したものがあれば ○を取得するということにできます。

で取得できない場合は #N/Aを返すようになっていますので #N/Aがきたら ×というように決めておけば いいでしょう。

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ