• ベストアンサー

Excelでこんな事。。。

皆さんこんにちは、宜しくお願いしますm(_ _)m。  現在Excelで作り物している最中で、以下のような事が実現できないかと悩んでいます。 【シートの状況】  ・A1からA10セルまでに1~10の数字を記入  ・B1セルをデータ入力セルとする  ・B2セルに関数を入れて、機能を実現したい  ・・・つまり質問したいのはB2セルに入れる関数部分です(^^)。 【実現したい機能】  B1に数字を入力します。B1の数字がA1~A10セルの中に  あれば、B2セルに○を、無ければ×を表示。  ・・・つまり、検索をして○×判定したいんです。シンプルな関数で実現出来るだろうとタカをくくって取りかかったのですが。。。出来ない(^^;)。  この機能を基礎に、少し機能を膨らませる予定ですのでこの機能自体は極力シンプルな方法で実現させたいと思っています。  Excelが得意な皆さん、是非教えてくださいm(_ _)m。

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

  • ベストアンサー
  • comv
  • ベストアンサー率52% (322/612)
回答No.4

こんばんは #1 MSZ006さんと考え方は同一ですが 一列(行)での範囲を検索するなら =IF(ISNA(MATCH(B1,A1:A10,0)),"×","○") も可能です。 =TEXT(COUNTIF(A1:A10,B1),"○;;×") なんてのもアリかな!

webdiver
質問者

お礼

お答えありがとうございます(^^)。  MATCH関数は自身使用した経験がありませんでした。これを機会に調べられて、一つ成長できた様な気がしました(笑)。ありがとうございます。 =TEXT(COUNTIF(A1:A10,B1),"○;;×")  これにはビックリしました(^^;)。僕の思考回路では絶対に出てこない発想です。恐れ入りましたm(_ _)m。  ネストも少なくシンプル。この方法で○×表示しても、結果をデータとして流用できるんですね。よく考えてみたら当然かも知れませんが・・・目からウロコという感じ。  弱点としては、時間が経過してこれを見直した時、検索目的の関数であるかを一目で判断出来ない可能性がある事くらいですか(^^;)。。。それくらい奇抜な方法だと言う事なんですが・・・。  まだまだ修行が足りませんσ(^^;)。以後精進します。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

再度登場。何かIfのつくもので出来そうな気がして。いま見つかりました。 例えばA1からA10まで、異なる数字、または文字を入れる。(同じものがあっても良い。)B1に何か数字または文字等を入力する。B2に式「=IF(COUNTIF(A1:A10,B1)>0,"○","×")」を入れておく。 A1からA10までの数字・文字のどれかでなければ×、どれかであれば○が表示されます。

webdiver
質問者

お礼

ありがとうございます(^^)。  今回教えて頂けた方法では機能が実現されているばかりか、ネストの数が少ないシンプルな構造ですね。  今回多くの式を皆さんに教えて頂いて、どの式も望む機能が実現されていました。嬉しいと同時に、未熟な自分に少々ヘコみ気味(笑)。  皆さんに点数を差し上げたいのですが・・・困りますね、それが出来ないシステムというのは(T-T)。

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

質問の内容の一部から外れています(○×が出ない)が、次のようにしても、近いことは出来ます。 B1セルで、入力規則を設定する。すなわち メニューの「データ」-「入力規則」-「データの入力規則のダイアログボックス」で、「入力値の種類」を「リスト」を選ぶ。そして「ドロップダウンリストから選択する」をオフにする。「元の値」を$A$1:$A$10とし、「OK」をクリック。 B1にA1からA10以外の入力を入れるとエラー表示が出る。ご存知でしたら済みません。

webdiver
質問者

お礼

お答えありがとうございます(^^)。  入力リストを作成して、それを入力規制のドロップダウンとする方法は重宝するので、僕も多用している手段の一つです(^^)。  また、このリスト項目にIF関数等を埋め込んでおいて、条件によってリストの内容を変更させられるようにすると、更に面白いドロップダウンリストが作れますよね(^^)。  今回はこの○×判定のエンジンを利用してExcelに入力チェックをさせようと目論んでいます(^^)/。入力しておかないといけない数値が未入力、なんてのを警告しようとしているんですね。

  • MSZ006
  • ベストアンサー率38% (390/1011)
回答No.1

ご質問の例でしたら、 =IF(ISNA(VLOOKUP(B1,A1:A10,1,FALSE)),"×","○") でできます。

webdiver
質問者

お礼

早速のご回答、ありがとうございますm(_ _)m。 しかもシンプル・・・!なるほど、VLOOKUP関数で拾える物が○、拾えないでエラーを出せば×・・ですかぁ。  Excelの機能実現は発想の転換が鍵を握っていると常々思っていますがσ(^^ )、最近ひねりが足りないなぁと自覚してます。  ありがとうございました(^^)。

関連するQ&A

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

    以下のようなことを実現できるエクセルの関数を教えてください。 <状況> ・ひとつのセルに、複数の数字が「,」区切りで入力されている。  (仮にA1セルとします) ・B1セルに検索値が入っています。 <実現したいこと> B1の値が、A1に含まれるとき、C1に”○”を返す。 このときのC1に入力すべき関数を教えてください。 <具体例> A1:12,13,14 B1:12 C1:○

  • エクセルの関数についての質問です

    エクセル2010で A1のセルに「○」が入力されると +3 A2・A3・A4 のセルはどこか一箇所にでも○が入れば、1を足します。 二箇所、三箇所に入っても 1しか足しません。 その合計数をBの列に表示させるようにしたいのです。 Bの1~4のセルは結合されています。 すべてに○が入った場合は、B列の数字は 3+1=4 A1にしか○が入らなかった場合のB列の数字は3になります。 3+0=3   A   B   1 ○ 2 ○ 3     4 4 ○   ○が入れば、3を足す  一箇所にでも入れば1を足す それぞれ別の関数は出来たのですが ふたつの条件の合計を出す式が出来ません。 非表示の列を作って、そこにまずは別々に数字を出して それを合計させる手もあると思うのですが 列を増やしたりせずに、関数だけで、B列に数字が入るようにしたいのです。 うまく伝わりますでしょうか どうぞよろしくお願いします。

  • エクセル

    なかなか解決ができないので質問させていただきます。 よろしくお願いいたします。 2週間前までは、正しい数字が表に入っていたのですが、今日開いてみると数字がまったく違っていました。 しかも全部ではなく、一行分だけで、関数まで違うものが入っていました。 手入力で関数をいれると正しい数字がでるのですが、上のセルからドラッグすると関数は正しいのですが数字は上のセルから持ってきてしまいます。 上のセル:A1+B1(20+20=40) ドラッグすると:A2+B2(50+30=40) になります。 関数はただのSUM関数です。 エクセルは詳しくないのでわからないのですが、良くあることなのでしょうか? 対処の仕方を教えてください。 よろしくお願いいたします。

  • ExcelのIF関数を使って

    エクセルのことについて教えて下さい。 エクセル2003のIF関数を使って、次のようなことがしたいのですが、どのようにしたらいいでしょうか? 例えば、A1のセルに1と入力したら、B1のセルにミカンと自動的入力され、2と入力したらバナナ、3と入力したらモモ・・・・となるようにです。(A1セルには1から5までの数字が入ります。) よろしくお願いします。

  • IF関数でしたい事と、似たような計算

    エクセル2002です。 表の中に   A     B   C  D 1  1~10  A 2 11~20  B 3 21~30  C 4 31~40  D    : と入力されています。 表示させたい内容は ★「C1セルには数字を入れます。その数字が8ならば、8は1~10の中の数字なので、D1のセルにAと表示される。15ならばBと入力したいです。 使う関数は、IF関数‥‥と迷ったのですが、1~20、21~30‥‥199~200まであるので、IF関数が使えません。 関数では、このような可能でしょうか? 可能であれば教えてください。 不可能であり、他の方法があるなら、教えてください。 お願いします。

  • Excel 隣のセルの頭文字に応じて文字を自動入力

    Excelの質問です。 隣のセルに入力された文字列の頭の文字に応じて、セルに自動的に文字を入力するにはどうすればよいのでしょうか?関数初心者です。 具体的には、 A1のセルに「T○○○○○」(○は任意の数字)が入力されていれば、頭文字がTなので、B1のセルに東京と自動的に表示する。 A2のセルに「N○○○○○」(○は任意の数字)が入力されていれば、頭文字がNなので、B2のセルに長野と自動的に表示する。 です。 よろしくお願いします。

  • Excelでこんな事出来ますか?

    こんにちは!いつもお世話になっています。 Excelのセルに数字以外の文字、例えば「人」を 一緒に入力した場合に合計が計算されませんけど、 何か良い方法はないでしょうか? A1のセルに「10人」B1のセルに「12人」として C1のセルにA1+B1の合計を出したいのですが・・・ 当然、セルを二つ使い罫線を引かなければ、可能 なのでしょうが・・・ Excelは2002を使用しています。 OSはwindowsXPです。 詳しい方よろしくお願いします!

  • エクセルの関数について質問です。(IFかな?)

    エクセルの関数について質問です。(IFかな?) A1が×の時はB1に-、A1が○の時はB1に手入力で数字入れたいのですが どのような関数にすればよいのでしょうか? よろしくお願いします。

  • こんな事が出来る関数はありますか?

    エクセル2003を使用しています。 数字を合計していって、それぞれ一万、二万、三万ときりのいい数字を越えたところでその数を表示するようにしたいのです。たとえば、  A     B 1 6500 2 3580   10080 3 2000 4 7000  5 5000   24080 A1~A5に入力した時にB2,B5を表示させたいのです。 そのような関数は、ありますでしょうか? 数字を累計していくのでBのどこのセルでその数を越えるのかは、そのたびに変わることになります。 初心者ですので、わかりやすく教えていただけるとありがたいです。

  • エクセル関数 以上以下

    エクセルでこのような関数はありますでしょうか? 例)A3のセルに「3」の数字が入力されている。   このA3セルの数字が「=2>A3>=5(2以上5以下)」という条件に合う場合、A4セルに「F」という記号を入力されるようにする、条件に合わない場合はなにも入力されない。  という機能はありませんでしょうか?  

専門家に質問してみよう