• ベストアンサー

エクセル関数について

エクセルの関数について質問です。 (見づらいですが添付ファイル参照) シート1のAさんの4月度の点数が98だった場合に シート3の対応表に沿った点数をシート2のAさんの 4月度に表示させたいのですが・・・ シート2のB-3に入る関数がわかりません。 おそらくIF、VLOOKUPを使うと思うのですが・・・ シート1は入力シートとして使い、シート2は結果を 表示するシートとして、年間を通して使用します。 回答をお願いします。

質問者が選んだベストアンサー

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

No.2です。 補足の >最後の3,1はどこを参照しているのでしょうか? に関して・・・ VLOOKUP関数の説明になってしまいますが、 VLOOKUP関数は範囲指定した一番左の列を「検索値」として、何列目のデータを返すか? という関数ですので、 前回回答した数式 >=VLOOKUP(Sheet1!B2,Sheet3!$A:$C,3,1) は Sheet1のB2セルを「検索値」 Sheet3のA~C列を「範囲」としています。 その次の「3」は3列目というコトです。 (No.2でも書いたようにB列は不要なのですが敢えてB列を作っていますので、3列目のC列データを返す必要がある) 最後の「1」は「検索方法」の型で「TRUE」型となります。 すなわち >=VLOOKUP(Sheet1!B2,Sheet3!$A:$C,3,TRUE) と同じ意味です。 ※ 大前提としてVLOOKUP関数の検索値(一番左の列)は昇順に並んでいる必要があります。←★重要です。 余談ですが完全一致は「FALSE」型にします。 FALSE型は検索方法で最後の「1」を「0」とします。 当然「0」の代わりに「FALSE」としてもOKです。 (FALSE型はどんな並びでも関係ありません) ここでVLOOKUP関数の「TRUE」型の説明が必要になりますが、当方が文章で説明するより ↓のURLが参考になると思います。 http://kokoro.kir.jp/excel/vlookup-true.html この程度でよろしいでしょうか?m(_ _)m

otacon777
質問者

お礼

ありがとうございます!! わかりやすくて、解決することができました。

その他の回答 (2)

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

こんばんは! 画像では詳細が判らないのですが、おそらくこういうコトであろうと・・・ ↓の画像でSheet3に対応表を作成しておきます。 Sheet3のB列(未満の列)は不要なのですが、判りやすくするために表示しています。 実際の表のレイアウトは違うかもしれませんが、やり方は同じです。 画像ではSheet2のB2セルに =IF(Sheet1!B2="","",VLOOKUP(Sheet1!B2,Sheet3!$A:$C,3,1)) という数式を入れ列・行方向にフィルハンドルでコピーしています。 ※ VLOOKUP関数の「TRUE型」で対応しています。 実際の区割りは実状に合わせてSheet3の表を作成してみてください。m(_ _)m

otacon777
質問者

補足

最後の3,1はどこを参照しているのでしょうか?

回答No.1

シート3がいまいち見えにくいんですが、P5は「未満」って書いてあるのかな? だとしたらP列はひとつの実数にして J7=IF(D7="","",IF(D7>$P$6,$R$6,IF(D7>$P$7,$R$7,IF(D7>$P$8,$R$8,IF(D7>$P$9,$R$9,,$R$10))))) 後はシート2全部にコピペでOKです

関連するQ&A

専門家に質問してみよう