- ベストアンサー
エクセルのプルダウンメニュー作成方法と自動計算式の挿入方法
- エクセルのプルダウンメニューを作成し、指定の文字入力でリストから候補を表示させる方法と、選択した値に応じて自動的に計算式を挿入する方法について説明します。
- プルダウンメニュー作成時に、指定の文字入力で一致する候補を表示させる方法を使うと、効率的にデータ入力ができます。
- また、選択した値に応じて自動的に計算式を挿入することで、手作業での計算作業を省略することができます。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
入力した数式が間違っていると,警告が出ます。数式を正しく書けば,勿論警告は出ませんしエクセルも喜んで答えを返してくれます。 間違い: =IF(F3="ABC",ROUNDDOWN(H3,2)*0.976), "DEF", ROUNDDOWN(H3,2)*0.976),"GHI",ROUNDDOWN(H3,2)*0.977),"JKL", ROUNDDOWN(H3,2)*0.979) 正解: =IF(F3="ABC",ROUNDDOWN(H3,2)*0.976,IF(F3="DEF", ROUNDDOWN(H3,2)*0.976,IF(F3="GHI",ROUNDDOWN(H3,2)*0.977,IF(F3="JKL", ROUNDDOWN(H3,2)*0.979,""))))
その他の回答 (3)
- keithin
- ベストアンサー率66% (5278/7941)
通常エクセルのデフォルト設定では。 準備: あるA列を選んでデータメニューの入力規則を開始(2007を使っているときはデータタブ) 種類をリスト,元の値にABCD,EFGH,IJKLと登録しておく 使い始めて最初はプルダウンから選ぶ。 2度目以降出てきた言葉では,Aを打ち込むだけで自動でABCDがセルに現れるので,そのままEnterで入力する。Eと一文字入れれば自動でEFGHが現れるのでEnterで入力する。 #出てこないときは,オプションの編集(2007ではオプションの詳細設定)で「オートコンプリート」のチェックを入れる。 また計算式については,「自動的に数式が出て欲しいセル」に事前に =IF(A2="ABCD",RONDUP(A2*…ABCDの時の数式,"") だとか =IF(A2="ABCD",ABCDの数式,IF(A2="EFGH",EFGHの数式,"")) などのように入れて備えておいて,A列にその値が入ったら自動で計算が始まって結果が出てくるよう仕込んでおいてください。 なお,これもリストの最初の5行分ぐらい数式を事前に埋めておくと,続きの6行目以降は「事前に数式を入れておかなくても」上から順にA列のデータを記入するだけで,その行の各セルに「自動で勝手に数式が投入される」ように仕込むことも出来ます。 これはオプションの編集で「データ範囲の形式と数式を自動拡張する」にチェックを入れておきます。 ただしこれは具体的な数式の内容によっては出来ない場合もありますが,単純な「ROUNDUP(A3*… 」の類であれば作動します。
補足
回答ありがとうございます。 しかし何が違うのか分りませんが、上記の通り教えて頂いた数式を入れてみましたが、数式が一つだけの時は、上手くいきますが、2つ以上入れると 一番見たくない ポップアップが上がってきて、「間違ってます」となります。 入力した数式は =IF(F3="ABC",ROUNDDOWN(H3,2)*0.976), "DEF", ROUNDDOWN(H3,2)*0.976),"GHI",ROUNDDOWN(H3,2)*0.977),"JKL", ROUNDDOWN(H3,2)*0.979) です。 何が間違っているのか、分かる方 教えて下さい。
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! 外していたらごめんなさい。 最後の >同じプルダウンメミューから「ABCD」を選んだら 同じ行の 違う列に 自動的に =roundup(A3*100),000・・・ と言う様に計算式が出る様にしたいので・・・ の件は具体的にどのような表があり、どのようにVLOOKUP関数を使いたいのか判らないので 前半の検索文字が含まれているものをリスト表示の候補にする方法の一例です。 ↓の画像のように作業用の列を設けています。 作業列H2セルに =IF($A$2="","",IF(ISNUMBER(FIND($A$2,G2)),ROW(A1),"")) という数式を入れ、オートフィルで下へずぃ~~~!っとコピーします。 そして、E2セルに =IF(COUNT($H$2:$H$100)<ROW(A1),"",INDEX($G$2:$G$100,SMALL($H$2:$H$100,ROW(A1)))) という数式を入れ、下へコピーしています。 このE列をリストの「元の値」で指定します。 これでA2セルに検索したい文字を入力すればその文字が含まれている元データが リスト候補として表示できると思います。 以上、参考になればよいのですが 的外れなら読み流してくださいね。m(__)m
お礼
そうなんですね、ありがとうございます。
プルダウンメニューを作る必要ないと思うんです。オートコレクト機能を使えば自動的に表示されますよね? プルダウンメニューには単語を入力する機能はありませんしね。(これ重要です) あらかじめ必要な単語を一列入力しておけば、入力するだけで該当する候補を(ひとつだけですが)表示してくれますよ。 また、質問のように計算式を選択したいのでしたら始めから全ての計算式について計算を行って、選んだ文字列によってどの結果を表示させるかを決めた方がスマートに作ることができます。
お礼
ご丁寧な回答ありがとうございます。 恥ずかしいですが、どこが違うのか分ってませんでした。。。