• ベストアンサー

【Excel】入力規則のリスト表示について

教えて下さい! Excelで入力規則のドロップダウンリスト「A」「B」の2つを作り、 「A」で選んだ内容によって、「B」で選択できる内容を変化させたいと 考えています。 INDIRECT関数を使用し、内容を変化させることは出来るようになったのですが 「A」を選択し直すと、「B」にすでに入力されているデータが一度クリアされ 空白の状態からリストを選択し、文字を入力するにはどうしたらよいでしょうか?

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

  • ベストアンサー
noname#262398
noname#262398
回答No.2

#1のNNAQです。 試しに空いているセルに =COUNTIF(INDIRECT(「A」),「B」)=0 と入れてみて下さい(条件付き書式ではなくセルに直接入力)。 「A」「B」の内容によって、TRUEかFALSEになります。 式を分かりやすくすると =IF(COUNTIF(INDIRECT(「A」),「B」)=0,TRUE,FALSE) と、同じです。 「B」が「A」のリストに無い場合(「A」「B」の組み合わせが正しくない場合)、COUNTIF(…)の結果が 0 、すなわち条件がTRUEになります。 個数を数える訳ではなくて、あるかどうかを調べるので COUNTIFを使わなくても良いですね。 =ISNA(MATCH(「B」,INDIRECT(「A」),0)) この式でも同じですね。

froma_a
質問者

お礼

なるほど!! 丁寧な解説、どうもありがとうございました。 ちなみにマクロを使用した形だったらできるんでしょうかね?? また別途質問させて頂きますね。 本当にどうもありがとうございましたm(_ _)m

その他の回答 (1)

noname#262398
noname#262398
回答No.1

出来ないと思います。 見た目だけで良いなら、「B」のセルに条件付き書式を設定。 数式が=COUNTIF(INDIRECT(「A」のセル),「B」のセル)=0 書式のフォントの色を白に設定。 クリアはされませんが、それっぽい動作になるかと。

froma_a
質問者

補足

見た目だけでも全然大丈夫です!! 出来ました◎どうもありがとうございますm(_ _)m ちなみにこの式の意味はどういうことなのでしょうか? 「COUNTIF」を使用するという発想がなかったもので。。。