• 締切済み

入力規則の連動したドロップダウンリストについて

EXCELの入力規則について質問です。 実際に私が作ったデータは複雑なので 質問を簡素化させるために↓アドレスの例で質問します。 入力規則で、 http://homepage3.nifty.com/hiro22219/dropdown-list.html の内容を参考に、連動したドロップダウンリストをINDIRECT関数を使用して作成しました。 実際にうまく作動はするのですが 例えば、入力規則を設定したA1で「総務部」を選択すると 連動してA2のリストが総務部の内容になるので、そこで「総務課」を選択したとします。 その後に、もう一度A1で「営業部」を選んだときに A2のリストは営業部の内容になるのですが、 それを選択する前の時点では、さきほどの「総務課」というデータが 残ってしまった状態になっています。 この問題を解決する方法はやはりVBAしかないのでしょうか? 例えばA1で総務部を選んだ際に名前定義範囲の一番最初のデータ(つまり「総務課」)と表示される、もしくは空白になるというイメージなのですが・・・ 私の作成したものを会社の他の人も使用するため なるべくVBAを使用せず作成したいのですが 無理でしょうか?

みんなの回答

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

A1セルとB1セルの値がリスト範囲以外の場合(後でA1セルを変更したような場合)に、B1セルを見掛け上空白表示にしたいなら、以下のような条件付き書式で実行することが可能です。 B1セルを選択して「書式」「条件付き書式」で「数式が」にして以下の式を入力し、「書式」ボタンをクリックしてフォントタブでフォントの色を白にしてください。 =SUMPRODUCT((B1=INDIRECT(A1))*1)=0 ただし、この条件付き書式の方法では、実際のデータは変更されていない(フォントの色が白くなっているだけです)ので、集計に利用するなどデータの変更が必要な場合には注意が必要です。

peko4
質問者

お礼

詳しいご説明ありがとうございます。 教えていただいた数式を条件付き書式で設定しました。 見かけ上でデータが消えたようになれば問題ないので これで解決です。すごく助かりました。ありがとうございました。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

Excel2003まででは。 >例えばA1で総務部を選んだ際に名前定義範囲の一番最初のデータ(つまり「総務課」)と表示される、もしくは空白になる A1で入力規則のデータを選ぶ(つまり入力する)という操作を行ったタイミングで, よそのセルであるA2の「セルに入っている内容」が自動で勝手に変わる, というアクションが出来ないかというご質問でしたら,それは自動起動マクロにA2を書き換えさせるしかありません。 勿論A2に数式が入っていればそれでも出来ますが,いまの前提はA2に(入力規則と)データを入れているのでそれも不可です。 総合的に。 マクロが必ずしも使えない前提で,もしご質問のようなエラーをチェックする必要があるのでしたら, 1)第3のセルに数式を入れて,A1とA2に不整合が無いか検査して結果を表示させる 2)A2(またはA1にも)に条件付き書式を施し,不整合があれば色を赤くする等して示す 3)第3の重要なデータ入力セルに入力規則を施し,A1とA2に不整合があったら入力できないようにする などの手が利用できます。 また 4)ご質問の前提は「A1を変えたのにA2を変え忘れる」という間違いのフォローですが,間違いは他にも沢山あり得ます。そのどこまで手当するのか,考え出すと切りがありませんので一切そういうフォローはしないというのも一つの判断です。 #別の手 Excel2007を利用すれば,条件付き書式の新しい機能で表示形式を利用することでA1の内容とA2の内容を数式で評価して表示を変えて示すことが出来ます。 しかしブックを広く配布して使用してもらう前提では,いま今日ではまだ2007に限定する事はとても出来ませんので,この方法は使えないと判断できます。また表示だけ変わって実データは変わっていない(変えなくて良いとユーザーに勘違いさせる)格好になるので,データ的にも非常に危険な状態だと言えます。

peko4
質問者

お礼

ご丁寧に説明をしてくださり、ありがとうございます。 条件付き書式で設定し、解決できました。 とても助かりました。本当にありがとうございます。

関連するQ&A

専門家に質問してみよう