• ベストアンサー

【Excelの検索で】こんなことできますか?

例えば各設問に1~5までの点数をつけたいのですが、 数値を直接入力するのではなく、1~5のセル範囲が ある直近のセルのいずれかに○ (もしくはそれに相当するもの)を入力すると その点数が表示されると言う関数はありますか? 人事考課の評価点をつけるのに利用しようと考えて います。 例)     1点 2点 3点 4点 5点   点数   設問1            ○       4   設問2         ○          3 上記のように設定したいと思います。 どなたか詳しい方教えてくださいm(__)m!!

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

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.5

#3のmshr1962です。 点数が逆の場合ですか? =IF(COUNTIF($B2:$F2,"○")>0,6-MATCH("○",$B2:$F2,0),"") 又は =SUMPRODUCT(($B2:$F2="○")*{5,4,3,2,1}) MATCH関数の場合は6からその位置の数を引けばOK 他の方法として =IF(COUNTIF($B2:$F2,"○")>0,CHOOSE(MATCH("○",$B2:$F2,0),5,4,3,2,1),"") の様にCHOOSE関数で振り分けも可

tenmaru
質問者

お礼

ありがとうございました。適切なアドバイスの おかげで解決しました! 我ながら自分の未熟さを痛感しました。。。 お忙しいところ、ありがとうございましたm(__)m

その他の回答 (4)

  • pjunk
  • ベストアンサー率32% (10/31)
回答No.4

HLOOKUP関数を使えばできます。 ヘルプより> 指定したテーブルまたは配列の上端行で特定の値を検索し、その値と同じ値が入力されている行と列の値を返します。 書式:HLOOKUP(検索値,範囲,行番号,検索の型) 範囲の一番上に各設問の行が、範囲の一番下に点数がくるようにします。 その上で行番号を ROW(点数の行)-ROW(設問の行)+1 とすればOKです。 コピーが簡単にできるように範囲の一番下の行には $をつけて固定にしてください。 こうすれば、一番下の点数の行を変更すれば、簡単に点数配分も変更できます。

tenmaru
質問者

お礼

ありがとうございます。参考にさせて いただきます。

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.3

=IF(COUNTIF($B2:$F2,"○")>0,MATCH("○",$B2:$F2,0),"") 又は =SUMPRODUCT(($B2:$F2="○")*{1,2,3,4,5}) 前者は、低い方の点数を表示(ない場合はブランク) 後者は、○のある点数を合計します。(ない場合は0)

  • saodake
  • ベストアンサー率21% (51/233)
回答No.2

マクロ文で出来ますが、一般には使える人が少ないので、IF文を使う方法が良いと思います。 例 =IF(参照セル="○",1,IF(参照セル="○",2,IF(参照セル="○",3,IF(参照セル="○",4,IF(T参照セル="○",5,"")))))

tenmaru
質問者

お礼

ありがとうございます。このような方法が あったんですね。

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

○をつけるセル範囲が仮にB2~F2であれば、 =MATCH("○",B2:F2) で、B2なら1、C2なら2というように、その範囲内の○の位置が出ます。 式を設問がある行の一番下までドラックしてコピーすれば簡単ですね。

tenmaru
質問者

補足

ありがとうございます。ちゃんとできました! しかし、例えば先ほどの点数の配置を逆にした場合・・・ 例)     5点 4点 3点 2点 1点   点数   設問1              ○     1   設問2      ○             4 このような場合はどのような関数を使えばよろしい のでしょうか。 何度も質問してしまい、申し訳ないですが、 教えて下さい。。。

関連するQ&A

  • エクセルの使い方

    2度目の投稿です。宜しくお願いいたします。 Aセルに入力した数値を範囲で計って、Bセルに別の数値を入力させるにはどうしたらよいですか? (例) A1セル「200,000」とした時に範囲が「195,000~210,000」であると認識させ⇒B1セル「1」と入力させる A2セル「220,000」とした時に範囲が「210,000~23,000」であると認識させ⇒B2セルに「2」と入力させる 単に平均値ではないので、難易度が高いかもしれませんが、どの関数を使えば(例)のようなことが出来るか教えてください。宜しくお願いいたします。

  • エクセル 検索

    Microsoft Excel 2007を使用しています。 条件を選んでマッチするデーターを表示する方法をお尋ねします。 A列、A1に「1」以下セルA10に「10」までの数字が昇順で入力されています。 セルB1からセルB10まで果物の名前が入力されています。名前の重複はありません。 セルC1に果物の名前を入力したらセルD1に関数を用いてそれに対応するA列の数値が表示されるようにできませんでしょうか。 エクセルのヘルプを見ましたが、旨く当てはまる関数を探し出せませんでした。 宜しくお願い致します。 例)  セルA5に「5」という数値があり、B5に「柿」が入力されている。 セルC1に「柿」と入力すると、セルD1に「5」が表示される。

  • EXCELでのカウント

    こんんちは!いつも使っている簡単な関数ならわかるのですが... 範囲→1列(A列やB列) 範囲内で指定の文字が入力されているセルの数をカウントしたい(返したい)んです。 例)B列に「2」「23」「50」「13」「12」と入力されているとしたら   「2」を入力しているセルをカウントしたかったら   「3」と出てくるように... COUNTIF関数だと「2」を指定したら「2」と入力したセルだけカウントされますよね。(例えば上記例だと「1」と帰ってくる。これを「2」を含んでいるセルの数をカウントしたいんです。 教えてください。 宜しくお願いいたします。

  • Excelで、5の倍数を超える度にセル色を変えたい

    Excel2010を使用しています。 B縦列に、 1 2 2 5 6 7 11 12 … といった数値が入力されており、この中で『5の倍数に達した、または5の倍数を超えた直近のセル』のみ、セル色を変えたいのです。 上記の例でいうと、5が入力されているセルと、10を超えて11が入力されているセルの色を変えたいのです。 (6,7,12といったセルは色を変えない) この方法がお分かりの方、ご教授頂けませんでしょうか。

  • エクセル2010でこのような表示は出来ますか??

    作成したいのは評価表です。1シート1人分。列は考課項目/行は考課点です。 A1に考課項目1・A2に考課項目2・・・以下50項目続きます。 B1~F1に考課点として5~1を入力してあります。 考課が5~1から一つだけ選択し、背景色を塗りつぶします。 その結果をG1に表示させたいのです。 但し5~1ではなく、5の場合は4で4の場合は3で・・・1の場合は0です。 EX)考課項目1→5/考課項目2→5の場合、B1の考課点4のセルを塗りつぶします。 でG1に考課点を8で表示させたいのです。 宜しくお願い致します。

  • Excelの関数についての質問です。

    Excelの関数に詳しい方、ご教授お願いします。 B3に-24.2、B4に-18.9、B5に-17.1と数値が入力されているとします。 E3のセルのところに、下記条件に合う関数を入れたいのです。 B3の値が-19.5~-20.4の範囲なら、-4と表示 もしくは、 -20.5~-21.4の範囲なら、-3と表示 もしくは、 -21.5~-22.4の範囲なら、-2と表示 もしくは、 -22.5~-23.4の範囲なら、-1と表示 もしくは、 -23.5~-24.4の範囲なら、 0と表示 もしくは、 -24.5~-25.4の範囲なら、+1と表示 それと、F3のセルに C3の数値とE3の数値の合計が+5~-10の範囲に入れば「○」、範囲外なら「×」を返す。 以上2点の質問です。どなたかよろしくお願いします。

  • excelで

    5段階評価を出すための式を教えてください。  具体的には、  (例)  1.A1~F1に点数を入れる。  2.A2~F2に1~5の5段階評価の値を表示させる。  です。  2行目の各セルに埋め込みたい関数の要素は…  1行目の点数が  0~39…1  40~54…2  55~74…3  75~89…4  90~100…5  というものです。

  • 印の位置で点数に換算する方法

    エクセルで人事考課表を作っています。 1列目には評価する項目が入ります。 2列目・3列目・4列目には評価の結果が入ります。 それぞれ「良」「フツウ」「ダメ」というわけです。 評価者には2列目~4列目のどこかに印(○を考えています)を入れてもらいます。 点数は、2列目が10点、3列目が7点、4列目が3点とします。 考課項目は50個くらいですが、それぞれの考課を点数換算し、集計結果によって総合判定します。 以上のような表で、○された位置で点数を判定し集計するやり方がありましたら教えていただきたいのですが。 よろしくお願いします。

  • エクセルで範囲内の条件を満たす数値を返す関数を教えてください。

    エクセルで範囲内の条件を満たす数値を返す関数を教えてください。 100以下なら1111 100超~200以下なら2222 200超~300以下なら3333 300超~400以下なら4444 400超~500以下なら5555 500超~600以下なら6666 600超~700以下なら7777 700超~800以下なら8888 800超~900以下なら9999 900超なら10000 上記のような条件があり、入力した数字が該当する条件の範囲内に該当している数字を抽出したいのですが、それができる関数を教えてください。 例えばA1セルに650と入力するとB1セルに上記の条件で該当する7777を表示する、 A1セルに100と入力するとB1セルに1111、 901とA1に入力するとB1に10000と表示されるなどのようにしたいのです。 IFを使った関数では7つまでしかネストできないので、上記の場合10ネストしなければならないのでIF関数が使えません(使える方法があるかもしれませんが私は知りません)。 ネストせずに「&」を使う方法も考えたのですが、それだと数値として扱われず文字として扱われてしまい表示形式を自在に編集することができなくなってしまいます。 良い解決方法を教えてください。

  • エクセルのIF関数の使い方について

     こんにちわ。仕事で成績の評価表の作成をしたくて、エクセルで表を作成しました。    表は、  Aのセル・・・氏名 Bのセル・・・テストの点数 Cのセルが平常点          Dのセル・・・BとCのセルを合計した合計点数          Eのセル・・・成績評価  Fのセル・・・合計点数による順位    という表を作成しました。    Eのセルに Dのセルの合計点数を基準として 5段階の評価をつけたい。    条件が、 85点以上が5、60点以上が4、50点以上が3、35以上が2、1~34点までが1    =IF の関数 =IF(論理式、真の場合、偽の場合) というのを使用すればいいのは   わかったんですが、いまいち関数式の取り方、書き方がわからなくて・・・本をみて記入して   みたんですがエラーになります。   どうしたら評価を自動転記することができるか、教えてください。   また点数をもとに順位をつける方法も教えて欲しいです。よろしくお願いします。

専門家に質問してみよう