• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ある二つのセルで、同時記入禁止する方法)

二つのセルで同時記入禁止する方法

このQ&Aのポイント
  • ある二つのセルで、同時に記入することを禁止する方法について調べました。
  • 選択した二つのセルに同時に数字を入力することを制限する方法について考えています。
  • マクロを使用せずに、二つのセルの入力を制御する方法があれば教えてください。

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.3

 セルに1を入力するという方法では御座いませんが、その様な目的を達成されるのでしたら、オプションボタンとグループボックスを組み合わせて使用する方が良いのではないかと思います。  まず、下記のURLのページを参考にされて、Excelのシート上にオプションボタンを必要な数だけ挿入して下さい。 【参考URL】  Be Cool Users > Excel > 入力・編集 > Excelでオプションボタン! / フォーム   http://kokoro.kir.jp/excel/form-option.html  次に、下記のURLのページを参考にされて、選択肢が例えば「A」と「B」の様に2通りなら2つのオプションボタンを1つのグループボックスで囲み、選択肢が例えば「イ」、「ロ」、「ハ」の様に3通りなら3つのオプションボタンを囲んで下さい。 【参考URL】  Be Cool Users > Excel > 入力・編集 > グループボックスでオプションボタンの応用 / フォーム   http://kokoro.kir.jp/excel/form-optiongroup.html  そして、各グループボックス毎に、そのグループボックス内で1番上の所にあるオプションボタンを右クリックする事で選択してから、そのオプションボタンに[リンクするセル]を設定して下さい。  こうする事で、グループボックス内では1つのオプションボタンしか選択できなくなり、グループボックス内の別のオプションボタンにチェックを入れると、その前に選択していたオプションボックスのチェックが自動的に外れる様になります。  そして、グループボックス内の1つ目のオプションボタンにチェックを入れた場合には、[リンクするセル]欄に設定したセルには1という数値が自動的に入力され、2つ目のオプションボタンにチェックを入れた場合には、2という数値が入力される様になります。(因みに、グループボックス内の全てのオプションボタンのチェックを外す場合には、[Delete]キー等を使用して、[リンクするセル]欄に設定したセルに入力されている数値を消去します)  但し、このままでは[リンクするセル]欄の所で設定したセルに、例えば「-100」や「あいうえお」等の様な、「チェックした内容とは関係の無い値」を直接入力する事が出来てしまいますので、関係の無い値が入力される事を防ぐために、[リンクするセル]欄の所で設定したセルに、入力規則を設定し、直接入力する事が出来ない様にします。  その際の入力規則の設定は、「入力値の種類」欄で[文字列(長さ指定)]を選択→「データ」欄の所で[次の値より小さい]か[次の値以下]を選択→「最大値」欄で0を選択、です。(この場合でも、オプションボックスによる入力は可能です)  尚、必ずしも必要な事では御座いませんが、関数を使って[リンクするセル]欄の所で設定したセルとは別のセルに、どの選択肢を選択したのかを表示させる事も出来ます。  例えば、下の添付画像の例では、D7セルには次の様な関数が入力されています。 =IF(ISNUMBER(MATCH(C7,{1,2},0)),INDEX({"A","B"},C7),"")  同様に、D12セルには次の様な関数が入力されています。 =IF(ISNUMBER(MATCH(C12,{1,2,3},0)),INDEX({"イ","ロ","ハ"},C12),"")

sukkkiyaki
質問者

お礼

オプションボタンを使う方法ですね。 こちらのほうが見栄えがいいですね。 ただ、今回は時間がなかったのでいったん見送り、次回の 時に機能をつけようと思います。

その他の回答 (5)

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.6

 回答No.3です。  もし、オプションボタンを挿入するために必要なフォーム ツールバーが表示されていない場合には、下記のURLのページを参考にされて、フォーム ツールバーを表示させて下さい。 【参考URL】  Excel(エクセル)学習室 / KENZO30 > エクセル中級・特別編 > フォーム ツールバーのコントロールとは   http://www.kenzo30.com/ex_kisotoku/ex_ks_tokubetu9_x1.htm

sukkkiyaki
質問者

お礼

回答ありがとうございます。 表示されました!!

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

No.4です。 たびたびごめんなさい。 両セルに同じデータが入力できないようにしたい!という質問でしたね! 前回は勘違いしていました。 ユーザー設定の数式を↓に変更してください。 (「1」をダブって入力できない場合です) =COUNTIF($C$7:$C$8,1)=1 どうも失礼しました。m(_ _)m

sukkkiyaki
質問者

お礼

回答ありがとうございます。 あれ?No4とあまり変わっていないような・・・ でもありがとうございます。

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

こんにちは! C7:C8を範囲指定 → 入力規則 → ユーザー設定 → 数式欄に =COUNTA($C$7:$C$8)=1 でも大丈夫だと思います。m(_ _)m

sukkkiyaki
質問者

お礼

できました!! こんなに簡単にできるんですね。 返信遅れてすいません。

回答No.2

>……C7、C8両方のセルに1が入っている状態を禁止する(できなくする)にはどのような方法があるのでしょうか? (1) 完全に禁止 C7、C8 のそれぞれのセルを選択した状態で「データの入力規則」のダイアログをそれぞれ表示し、次のとおり設定。   設定タブのユーザー設定の数式     エラーメッセージタブのエラーメッセージ C7       =c8=""        「2 つのセルに同時に記入することはできません。」 C8       =c7=""                    〃 (2) 実際には 2 つ目のセルに記入できるが、記入してはいけないことが分かるようセル内を暗い色などで塗りつぶし   条件付き書式(*)の条件式    書式 C7    =(c7="")*(c8<>"")    塗りつぶし C8    =(c8="")*(c7<>"")      〃 * セルを選択した状態で、ホームタブから条件付き書式のダイアログを表示。 「数式を……」を指定して、条件式の入力と、書式ボタンでの塗りつぶし(網かけ)の設定を実行。 なお塗りつぶしの代わりに表示形式を設定しても、「-」などの文字列を表示することはできません。 なにがしかの値がセルに記入されれば「-」などを表示できますが、完全な空欄ではできません。 (3) 上の (1)、(2) を併用 >……スイッチ動作するような方法もあればお願いします。  ここでいうスイッチ動作とは、……、片方に1を入れたら自動でもう片方が空欄となるような…… 上の (2) の方法で満足できず、「-」などの値をセルにしっかり算出したいという場合は、セルに数式を記入しておく必要があります。 しかし数式があるセルにユーザーが値を記入しようとすると、既存の数式を上書きしてしまうことになります。したがって、入出力を分離するために、入力用の補助セルを他に用意するしかありません。C7、C8 は表示用となります。補助セルの位置は、同一シートの印刷範囲の外に置いたり、別シート上でも構いません。次の例は、右隣のセルに入力することとした場合です。 出力セル   出力セルに記入しておく数式   入力セル   C7    =if(d7="",if(d8="","","-"),d7)    D7   C8    =if(d8="",if(d7="","","-"),d8)    D8 どうしても補助セルは用意せず、ユーザーには C7、C8 に記入させたいんだという場合は、マクロを使うしかありません。 また、2 つ目のセルに値を記入した瞬間に 1 つ目のセルの値が自動的に消えるように仕込みたいという場合も、予めどちらのセルが 1 つ目なのかを定めておかないのだとすれば、マクロを使わなければ実現できません。

sukkkiyaki
質問者

お礼

回答ありがとうございます。 今回はこの機能をいったん見送りにし、次回のときに考えることになりました。 参考になりました。

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

C7に =AND(C8=0,OR(C7=0,C7=1)) として空白を無視するのチェックを外す C8に =AND(C7=0,OR(C8=0,C8=1)) として空白を無視するのチェックを外す

sukkkiyaki
質問者

お礼

回答ありがとうございます。

関連するQ&A

専門家に質問してみよう