- ベストアンサー
XPのエクセル2002の関数について
お世話になります。エクセルで困ってます。シート1のA1~A100に一覧で個人名が100名ほど入っています。その隣のB1~B100には個人別の数値(金額)が入ってます。でシート2のA1に個人名を入力したらB1にその数値が表示されるようにしたいのですが。それと空白の場合は0と表示したいのです。 その場合シート2のB1に =IF(A1="",0,VLOOKUP(A1,シート1!$A$1:$B$100,2) では何か正しく表示されません。どこがおかしいのかもわかりません。ちなみにシート1はあいうえお順に並び替えてあります。出来ましたら計算式を教えていただきたいのですが。よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 やってみましたが、最後の)が1個足りないのは入力ミスでしょうか? 参考までに、文字列で検索するときは最後に FALSE をつけた方がいいですよ。あと、一覧に名前をつけると良いと思います。(CODEとかわかりやすい名前) =IF(A1="",0,VLOOKUP(A1,CODE,2,FALSE)) これで大丈夫だと思います。
その他の回答 (2)
- grumpy_the_dwarf
- ベストアンサー率48% (1628/3337)
回答No.3
> =IF(A1="",0,VLOOKUP(A1,シート1!$A$1:$B$100,2) これだと個人名が読みの五十音順ではなく文字コード順に並んでないとマズイような 気がします。並べ替えのオプションでふりがなを使わないようにしてみてください。 vlookup()関数の最後にFALSEパラメータをつけておけば、並べ替えの心配はしなく てすみますよ。
質問者
お礼
大変お忙しい中どうもありがとうございました。またひとつ勉強になりました。
- NIWAKA_0
- ベストアンサー率28% (508/1790)
回答No.1
=IF(A1="",0,MATCH(A1,シート1!$A$1:$B$100,0) ではどうですか?
お礼
最後のカッコは入力ミスです。すみません。FALSEを付け足したら出来ました。質問からほんの数分でのご回答ありがとうございました。