エクセル関数での特定の名前のポイント付け

このQ&Aのポイント
  • エクセルの関数を使用して特定の名前にポイントを付ける方法についての質問です。A列とB列に名前が入っており、特定の名前が入っていればポイントを付けたいと考えています。
  • 質問1では、IF関数を使用してポイントを付けようとしていますがエラーが出ています。解決策を求めています。
  • 質問2では、「太郎」という部分を特定のセルから指定する方法があるのか、それとも毎回手動で入力する必要があるのかについて質問しています。
回答を見る
  • ベストアンサー

エクセルの関数で・・・

エクセルの関数でやりたいことが出来ないので、質問させてください。 OS:xp ソフト:エクセル2002sp3 A列とB列にそれぞれ名前がずらっと入っているとします。 そして一番上の行のAorB列のどちらかに特定の名前が入っていれば10を 次の行のAorB列のどちらかに特定の名前が入っていれば9・・・・ というふうにしていきたいのですが、最初の行すら出来ません。 いわゆる「1位に名前があれば10点、2位にも名前があれば9点・・・」みたいなことです。 質問(1) =IF(A1:B1="太郎",10,0)って感じに入力したのですが、#VALUE! が出ます。なんとなくダメになりそうな気はするのですが、解決策が分かりません。どうしたらいいでしょうか? 質問(2) 「"太郎"」の部分は表からの特定セル指定で可能なものなのでしょうか? それともいちいち文字列を入力しなければならないのでしょうか? (結局、上の問題が解決しなければどうしようもないことですが・・・笑) わかりにくい文章になってすいません。 アドバイス等いただければ、幸いです。よろしくお願いします。

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

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.1

>質問(1) =IF(A1:B1="太郎",10,0)って感じに入力したのですが、#VALUE! が出ます。 この場合はOR関数を利用します。 =IF(OR(A1="太郎",B1="太郎"),10,0) 質問(2) 「"太郎"」の部分は表からの特定セル指定で可能なものなのでしょうか? それともいちいち文字列を入力しなければならないのでしょうか? そのままセル参照ができます(Z1セルに名前が記入されている場合)。 =IF(OR(A1=Z1,B1=Z1),10,0)

devilsway
質問者

お礼

やりたいことができました。 作業全体を見れば、もっと簡潔にできるんでしょうけど、 とりあえず私の力量でできる範囲の関数ではこれがベストです。 ありがとうございます。

その他の回答 (3)

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

こんばんは! 外していたらごめんなさい。 ↓の画像のようにA・B列に氏名が入力してあり、 特定の名があれば上から順に10点・9点・・・という点数を付ければ良いのですかね? 一応そういうことだとしての方法です。 まず、得点列のD2セルに =IF($F$2="","",IF(OR(ISNUMBER(FIND($F$2,A2:B2))),11-ROW(A1),"")) これは配列数式になってしまいますので、 D2セルにこの画面から数式をコピー&ペーストしただけではエラーになると思います。 数式を貼り付け後、F2キーを押すか、数式バー内で一度クリックします。 編集可能になりますので、Shift+Ctrl+Enterキーで確定してみてください。 数式の前後に{ }マークが入り配列数式になります。 そのD2セルを下へオートフィルでコピーします。 これで10点~1点の表示ができると思います。 そして、G2セルは単純に =SUM(D2:D11) としています。 これでF2セルに検索したい名前の一部でも入力すると A列またはB列にその文字を含む氏名があればD列に点数が表示されるはずです。 以上、長々と書きましたが 参考になれば幸いです。 的外れなら読み流してくださいね。m(__)m

devilsway
質問者

お礼

画像もつけてアドバイスいただき、ありがとうございます。 たぶん的外れではない返答だとは思うのですが、 私の力では・・・すいません! レベルアップしていけば、理解できるとは思うんですが、 すぐに適用可能なスキルとはいかないので・・・。 もっと使いこなせるようになりたいものです。 ありがとうございました。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

ご質問の意味がよく理解できていませんが 例えばA列やB列に1行目から名前があるとして、それが11行目まで入っているとします。 それらに入っている名前に同じ名前はなく一つの名前は一つのセルだけに入力されているとします。 そこで、例えばD1セルから下方にそれらの名前が太郎、花子、…のように並んでいるとします。 それらの方がAまたはBの列で上の行から(最上位が10として)何番目の行に有るかを検索して、その順位をE列に表示させるとしたらE1セルには次の式を入力して下方にオートフィルドラッグすればよいでしょう。 =IF(OR(COUNTIF(A$1:B$11,D1)=0,D1=""),"",11-SUMPRODUCT(NOT(ISERROR(FIND(D1,(A$1:A$11)&(B$1:B$11))))*ROW(A$1:A$11)))

devilsway
質問者

お礼

返答ありがとうございます。 私の力量では、一番下の行を見ただけでパンクしそうです・・汗 もっと関数が出来るようになれば楽になるんだと思います。 参考にさせていただきます。

  • A88No8
  • ベストアンサー率52% (834/1602)
回答No.2

こんにちは  もしかして添付の画像のようなことがしたいのかしら?  その場合、COUNTIF関数 や SUMPRODUCT関数を利用します。

devilsway
質問者

お礼

画像まで付けていただいてありがとうございます。 これぐらいの関数を一発で頭に浮かべられるようになりたいものです。 参考にさせていただきます。

関連するQ&A

  • エクセル関数について

    エクセル関数について質問です。 簡単に説明すると特定のセルに特定の数値を入力するとその行の別のセルの数値を別のセルに表示させたい。 たとえば     A      B       C 1  100            2  200      1      100 3  300      1      300 4  400 5  合計            400 上記の様になっていた場合 A列は定数で固定です。B列のセルに1と入力(1でなくてもよい)した行のA列の数値を Cに表示したいのですが、 C列にどの様な関数を使ったらいいんでしょうか?宜しくお願い致します。

  • こんなことエクセル関数でできますか?

    お世話になります。 エクセルの1列に日本人の氏名が約2000名分並んでいます。1セル1名なので例えばA1セル~A2000セルに2000名分の氏名が入力されているといった感じです。 氏名は全角漢字で姓と名の間に全角のスペースが入っています。 ここで、この2000名の中で同姓同名(漢字が全て同じ)を即座に知る方法を探しています。 例えば、山田 太郎がA1、A409、A1765にあり、佐藤 花子がA222、A288にある事実を簡単に知る方法を探しています。 エクセルの関数を使って出来ないでしょうか? (関数が入力された1列2000行に2000名の名前を貼り付けると、B1、B409、B1765に山田 太郎が返ってくるとか・・・。) 宜しくお願いいたします。

  • エクセル 関数

    sheet1 エクセルのA列に名前が入力されています。 B列にはその個数が正の数または負の数で記入されています。 小数点を含む数はありません。 尚、A列の名前は同じ名前が何度も入力されていて、その行ごとに 個数は異なっています。 上記の状態でsheet1のB列全体の負の数を0(数値)として 同じB列に表示させるには、 どのような数式をシート内のどの部分にはりつければよいのか教えてください。 ROUNDDOW関数を使っていろいろためしましたが、エラーばかりで質問させていただきました。 よろしくお願いします。

  • EXCEL ドロップダウンリストの連動について

    EXCELの質問です。 シートXの行1の、列Aに「チームA」、列Bに「チームB」、列Cに「チームC」と入力し、 この3つに「名前の定義」で「チーム名」と付けました。 続けて、 シートXの列Aの行2~行10まで、チームAのメンバーの名前を入力しました。 同じく、 シートXの列Bの行2~行10まで、チームBのメンバーの名前を入力しました。 同じく、 シートXの列Cの行2~行10まで、チームCのメンバーの名前を入力しました。 次に、シートYの行1の列Aに、入力規則で「リスト」として、「元の値」に「=チーム名」としました。 次に、シートYの行2の列Aに、入力規則で「リスト」として、「元の値」に「=INDIRECT(A1)」としました。 こうして、ドロップダウンリストを連動させました。 ここで、 シートYの行1の列Aで「チームB」を選択すると、 シートYの行2の列Aのドロップダウンリストには「チームB」のメンバーの「名前が出てきますよね。 ここで、「チームB」の3番目の選手(名前を「日本 太郎」とします)を選択した後で、 シートXの列Bの行2~行10まで入力した、チームBのメンバーの名前が全員間違っていたため入力し直した時に(例えば「日本 太郎」を「世界 太郎」に変更したとします)、 選択済みの「日本 太郎」を、自動連動で「世界 太郎」に変更されるようにしたいのですが、方法はあるでしょうか? ドロップダウンリストが連動して、かつ元データを変更したら自動で反映されれば「INDIRECT関数」以外の方法でも構わないです。何か良い方法はないでしょうか?

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

    エクセルの関数についてです。 シート1の1行目には見出しが入っています。A列うには 店名  B列には  氏名(店長名) がはいっています。 A2には、 あ店   B2には、田中 太郎。 A3には、い店 B3には、小林 明子、   A4には、 あ店   B4には、田中 太郎。 A5には、う店 B5には、佐藤 誠 A6には、 あ店   Bには、田中 太郎。 と ランダムに入っています。  店名は、 あ店~を店まであります。 しかし 500行までランダムに店名はバラバラに入っています。 シート2に、A2:A42 と B2:B42 にあ店~を店まで 順番に 並べたいのです どうやってやったらいいか教えてください

  • 関数で出来ますか?。

    エクセルのシートでA列に固定顧客番号が入力されていきます。 B列に顧客氏名が入力されます。 A列に不特定多数の番号が入力され、たとえば500行目に1234と入力したならその500行目のB列に過去に入力された1234の顧客名が表示されるようにしたいのですが。 A列は日々入力され2000行くらいまで使用します。 もしできるようでしたなら何処にどのような関数を入れればよいか教えてください。 宜しくお願いいたします。

  • エクセルの関数で

    A列B列それぞれに100行ぐらいあり数値が入力しています。 C列にA列とB列のうち数値が小さい方の数値を100行分抽出したいのですが、エクセルの関数でできないでしょうか?

  • Excelの関数?条件付き書式?についての質問です

     みなさんいつもありがとうございます。度々お世話になります。  今回もエクセルについての質問です。(使い始めたところで色々と疑問が生じてしまいます。)  例えば、以下のような表を作りました。         列A    列B      氏 名  点 数  行1  Aくん  80点  行2  Bくん  75点  行3  Cくん  95点  行4  Dくん  25点  そこで、30点以下のDくんの「名前」の、文字の形や色を自動的に変えるには、どのようにすればよろしいですか?お教えください。  (「できるExcel」や「図解Excel」の本を見てもわかりにくくて・・・・)

  • エクセルの関数の数式がわかりません。

    A列 B列 1 10 2 20 3 30 a 4 40 エクセルの関数の数式がわかりません。 B1~B4のどこかにaの入力があった場合、aの入力がある行と同じ行のA列に入力されている数字を別のセルに表示させたいです。 例えば、上記のようにB3にaがあるので、A3の30を、別のセルに自動で30と出るようにしたいです。 B列には、ランダムにaを入力しますので、aが別の行にある場合もあります。 この場合の数式を教えてください。 よろしくお願い致します。

  • エクセルの同じ行の違う列を返す関数

    エクセルの同じ行の違う列を返す関数 エクセルの関数について質問があります。 例えば、以下のようなデータがあったとして、 左からA列、B列、上から1行、2行・・・5行目に 0.1  32 0.2  9 0.3  15 0.4  2 0.5  21 といったデータがあるときに、例えば MIN(B1:B5)はB4の5とわかった場合に、 この時のA4の数値を知りたいのです。 データが膨大だとその数値をさがすだけで大変です。 よろしくお願いします。

専門家に質問してみよう