• ベストアンサー

入力規則リスト入力のIF関数

申し訳ありませんが助けてください。 A    B 1肉    鶏肉 2     豚肉 3     牛肉 4果物  りんご 5     みかん 6     いちご 7野菜  大根 8     にんじん 9     ピーマン 上記のような表をもとに、A10に入力規則で「肉,果物,野菜」のリスト入力をさせます。そしてB10には、A10が肉だったら「鶏肉,豚肉,牛肉」のリスト入力。A10が果物だったら「りんご,みかん,いちご」のリスト入力させたいと思っています。 そのためB10に入力規則をリスト表示にして、元の値に以下の計算式をいれました。 =IF(A10="肉",$B$1:$B$3,IF(A10="果物",$B$4:$B$6,$B$7:$B$9)) 以上のためしで作ってみた計算式はうまくいったのですが、実際業務上のリストはAが15項目あり、ネストの制限によりIF関数を重ねられません。 他にいい方法がないか、お知恵を拝借したいと思います。よろしくお願いいたします。 ※ちなみに、当方マクロの知識がまったくありませんがマクロで解決できるのであれば勉強しますのでよろしくお願いします。

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

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

こんにちは! 外していたらごめんなさい。 関数ではないのですが・・・ 当方使用のExcel2003の場合です。 ↓の画像でA10セルはメニューの入力規則のリストからD1~D3を範囲指定し、肉・果物・野菜 をリスト表示させるようにしています。 そして、B1~B3を範囲指定 → メニュー → 挿入 → 名前 → 定義 から「肉」と定義。 同様にB4~B6を範囲指定 し、「果物」と名前定義 B7~B9を範囲指定し、「野菜」と名前定義 (範囲指定の後に、名前ボックスに直接入力しても構いません) そして、B10セルを選択 → メニュー → データ → 入力規則 →リスト を選択し、 元の値の欄に =INDIRECT(A10) としています。 これで画像のようにA10セルで選択したものだけがB10セルのリストの候補になります。 以上、参考になれば良いのですが 的外れなら読み流してくださいね。m(__)m

h-work01
質問者

お礼

できました! ありがとうございます! 実は名前の定義は行っていたのですが、 そんな便利なことができるとは露知らず、せっせとIF関数を入力していました。 INDIRECTですね。ひとつ覚えました。ありがとうございます。 またなにかありましたら、よろしくお願いいたします。

その他の回答 (1)

  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.1

ネストを深くしないで、たくさん分岐する。 下記同じ質問。 http://questionbox.jp.msn.com/qa5444180.html

h-work01
質問者

お礼

ごめんなさい。IF関数そのものが間違っていたようです。 でも教えていただいたページは別の機会に役に立ちそうです。 ありがとうございました。

h-work01
質問者

補足

早速の回答ありがとうございます。参照URL拝見しました。 ただ、今回はリストの元の値への入力になりますので、 &でつなげると「単一の行または列の参照でなければなりません」と エラー表示されてしまいます・・・ でもいいヒントになりました。分岐して、なおかつリストでも使える方法を 自分でももうちょっと調べてみます。 他にもなにかいい案があればお教えください。

関連するQ&A

  • 表を利用した名前の定義・入力規則設定について

    はじめまして。 エクセルの入力規則・名前の定義でどうしても分からない事が ありましたので、教えて頂けますでしょうか? 【前提】以下のような表が作成されているとします。 A列   B列 果物   りんご 果物   みかん 果物   いちご 野菜   ピーマン 野菜   にんじん 野菜   なす その他  肉 その他  魚 【要望】 セルC1に、果物のみ(「りんご」「みかん」「いちご」)が表示 されたドロップダウンリストを作成します。 同様に、セルD1に、その他のみ(「肉」「魚」)が表示 されたドロップダウンリストを作成します。 【質問】 要望を満たす為に、入力規則を設定したいのですが、  >前提にある表の中から、  >A列が果物であるデータだけを取り出し、  >そのB列をリストの元の値とする とする方法が分かりません。 「りんご」「みかん」「いちご」だけを選択し、名前定義をする、 という方法もあると思いますが、 そうではなく、あくまで「果物」というキーを指定して 名前を定義したいのです。 以上、よろしくお願いします。

  • エクセル2007の入力規則?教えて下さい。

    初心者です。出来るだけ詳しく解説して頂けると本当に助かります。 昨日、質問を出し、沢山の方に教えて頂いたのですが、未解決のままなのです。 私が、やりたい内容を書いてみました。 宜しくお願いします。 A列には種類のプルダウンメニューを作成し、果物・野菜・肉と選択出来るようにする B列にはA列で選択した各種類それぞれに、関連した商品名がプルダウンメニューで表示され選択出来るようにする。 こんな感じ 果物を選択した場合、プルダウンメニューでイチゴ・バナナ・みかん 野菜を選択した場合、プルダウンメニューでレタス・大根・白菜 肉を選択した場合、プルダウンメニューで、鶏肉・豚肉・牛肉 次にB列で選択した商品の単価が自動表示される。 こんな感じ 野菜 レタス 150 初心者なので、出来るだけ詳しく解説して頂けると助かります。 宜しくお願いします。

  • excelの入力規則リストで重複不可にするには

    エクセルの入力規則でリストを利用して【プルダウンメニュー】を作成しています。 リストのデータを重複して選択できないようにするにはど のようにすればいいでしょうか? 例をあげるとしして 仮にA、b、Cの3つのセルに入力規則のリストを設定していずれも元の値が 『リンゴ』『みかん』『バナナ』とした場合。 Aのセルでリンゴを選択した時BやCのセルでリンゴを選択できないようにするに します。 VBAは全く分からないのでできれば関数で やる方法をご教授頂ければと思います。 宜しくお願いします

  • 【EXCEL】 入力規則-リストを利用したaliasによるデータ参照入力

    EXCELでの話です。 例えば、下記データ構造("代表名:ID")をリストに登録しておくとします。 "リンゴ:A1" "みかん:A2" "キャベツ:B1" あるセルに入力規則の設定をして、プルダウンメニューに上記リストを表示させます。 この後、以下のような制御をさせることは可能でしょうか? ■選択した情報からIDを読み取り、対象セルに自動入力させる。  (例.ユーザが"みかん:A2"を選んだ場合、そのIDである"A2"のみをセルに自動入力させる) できれば、マクロを使わずに、既存のファンクション(入力規則などの)のみで実施したいと考えています。

  • 入力規則のリストボックス

    エクセルの入力規則でリストボックスを使って選択したいのですが その時に、数字のみを抽出する方法はないですか? 例えば 1:りんご 2:みかん 3:バナナ をリストから選択する時、番号のみが表示されるように したいのです。 リストにはその番号がどれに該当するかわかるように りんご、みかん、バナナという内容も表示させたいのです。 よろしくお願いします。

  • EXCELの入力規則のリストについて。その1(重複セル)

    Excel2000で入力規則のリストを設定しようとしています。 リストの元になる範囲のデータには重複するものがあります。 その重複するものを各1つずつリストに表示させることはできるでしょうか? 例 みかん   みかん りんご → りんご みかん   ぶどう ぶどう VBAは苦手なので、元になる範囲から関数などで別な場所に重複しない表を作り、それをリストに使用する方法でもいいなと思っています。 元になる範囲が変更される度に、更新や修正をしないでよい方法があれば助かるのですが。 どうかよろしくお願いします。 もう1つ「EXCELの入力規則のリストについて。その2(IFで空白にしたセル)」という質問もしておりますので、何卒そちらもよろしくお願いします。

  • ドロップダウンリストを二つ作る

         A     B 1  果物    りんご 2  野菜   トマト という表があったとします。 A に リストで果物か野菜を選択できるような式を入れ 果物を選択すると、Bはりんごかみかんを選択できるような式を入れたいです。 正し、上記の表は、シート1 選択するためのリストの一覧はシート2に表示させるものとします。 いろいろ調べましたがどうやってもできませんでした。 やり方教えてください。 エクセル2010使用です。

  • Excelでこのような集計はどうしたらいいですか?困ってます!

    こんにちは。 以下のような集計を行いたいのですが、どうすればよいかわかりません。教えてください!! Sheet(1) A列、B列、C列 カテゴリ、数、品名 =================== 野菜、1、大根 野菜、2、ねぎ 果物、2、いちご 肉、3、牛肉 果物、1、りんご 肉、2、豚肉 ・ ・ ・ Sheet(2) A列、B列、 カテゴリ、金額 =================== 野菜、300 果物、300 肉、500 ・ ・ ・ 各品物は、100円均一とし、Sheet2でカテゴリ毎に必要な金額を求めます。Sheet1は、およそ1000行ほどあるので、一括で数式で求めたいのですが、どのような関数を使えばよいのかわかりません。 お願いします!

  • エクセルの入力規則

    エクセルの入力規則で、D1のセルにりんごと入れるとD列に色をつけるようにしました。後、追加の機能で○を入れるとその行の見出し(A列)セルにも色をつけたいのですが・・(下の表なら、A3.A4セルに色をつけたい) 何か方法はありますか?    A   B    C    D 1      いちご みかん りんご 2  あ   ○        3  い        ○    ○ 4  う             ○           

  • Excel2003での入力規則の質問です。

    Excel2003での入力規則に関して質問です。 Sheet1のA列には食材の種類、B列には具体的な食材の名前が書かれています。   A    B 1野菜  にんじん 2野菜  玉ねぎ 3野菜  じゃがいも 4肉   牛 5肉   鳥 6肉   豚 7魚   鯖 8魚   イワシ 9魚   鮭 10果物 バナナ 11果物 みかん 12果物 林檎 (※実際には食材の種類も食材の名前ももっと多いです) この表とは別のシート(Sheet2)でこの表を参照します。 具体的にはSheet2のA1とA2の2つのセルに食材の種類を記入します。 そしてA3セルで入力規則によるドロップダウンリストを表示したいのです。 例えば、Sheet2のA1に「野菜」、A2に「肉」と記入します(「」は実際には記入しません)。 その後、A3のセルのドロップダウンリストを表示させると、「にんじん」「玉ねぎ」「じゃがいも」「牛」「鳥」「豚」の6項目が自動で入っているようにしたいのですが、これは可能なのでしょうか? また、これを応用し、Sheet2のA3のドロップダウンリストに表示されるものが ・A1に記入された食材の種類に対応した名前。 ・A2に記入された食材の種類に対応した名前。 ・A1とA2に記入された名前に関わらず食材の種類「果物」に対応した食材の名前。 の3項目を表示させることは可能なのでしょうか? いずれの場合でも、Sheet2のA1とA2に同じ食材の種類が記入された時(例えば、A1に「肉」、A2に「肉」)は、ドロップダウンリストは自動的に「牛」「鳥」「豚」の3項目になるようにリスト項目をダブらせないように設定するようにしたいです。 こんなことが可能なのか分かりませんが、よろしくお願いします。

専門家に質問してみよう