• ベストアンサー

エクセルで入力保護(制限・コントロール)をしたい

エクセルでおこないたいのですが・・・ 具体例: A1からF1まで入力します。 A1に値が入らないと、B1からF1までは入力できません。(A1の値は決まっていませんが、空白以外の何かです) A1に入力したあと、順繰りに入力していき、 F1に決まった値(例えば「ok」など)が入ったら、A1からE1までは変更できなくなります。 F1を消せば、また、A1からE1に入力ができるようになります。 このような入力をおこないたいのですが、できるでしょうか。 マクロでもVBA使用でもかまいませんが、使ったことがないので その際はコマンド文や使い方も併せて教えていただくとありがたいです。

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

  • ベストアンサー
noname#187541
noname#187541
回答No.1

こんばんは。 入力規則で可能です。 A1を選択し データ→入力規則 の設定タブで入力値の種類をユーザー設定にします。 数式に =$F$1<>"ok" と入れて閉じます。 B1~E1を選択し、入力規則でユーザー設定の数式に =AND($A$1<>"",$F$1<>"ok") と入れて閉じます。 F1を選択し、入力規則でユーザー設定の数式に =$A$1<>"" と入れて閉じます。 とりあえずこれでできると思います。 後はエラーメッセージタブで表示するエラーメッセージを独自に設定するなどしてください。 どうでしょうか。

1dokokkiri
質問者

お礼

回答ありがとうございました。今朝回答を拝見し、早速使ってみました。入力規則は昨日も見ていたのですが、気がつきませんでした。 思っていたとおりのExcelシートができました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルVBAで関数が入った空白セルの取得

    エクセルVBAで下記のようなセルの参照をしたいのですが、よろしくお願いします。(エクセル2002です)   A  B  C  D  E  F 1 78 80 セル(A1)(B1)には値も関数も入れられています。 セル(C1)(D1)(E1)には値は入っていませんが、ワークシート関数が組み込まれており空白となっています。(関数の""にて空白) セル(F1)には何も入力されていません。 今回はセル(B1)の80の値を取得できるようにVBAで下記のようにコードを組みました。 Range("F1").End(elToLeft).Activate そうすると、セル(E1)に関数があるために(?)(E1)がアクティブな状態となります。 関数が入力されていても空白として(B1)をアクティブな状態にするために良い方法はありますでしょうか? 誠に申し訳ございませんが、よろしくお願いします。

  • Excelの入力式について

    Excelの入力式について教えてください。 たとえば、A1セル~F1セルに数値が入っていて、G1セルA1+B1の値、H列にC1+D1の値 I列にE1+F1の値としたい場合、 G1セルに数式を入れてH列にコピーするとB1+C1になってしまいます。 上手くやる方法はないのでしょうか。 1列ずつわざわざ空白列を作るのは嫌ですし、たくさんあったら数式を打ち込むのも大変です。。。

  • エクセル マクロ 入力制限について

    検索で探したのですが、うまくヒットしないため、質問させていただきます。 エクセルのセル入力制限についての質問です。 D1セルが空白でなかったら、A1・B1・C1に入力できないようにする と言う条件です。 それを、D1セルだけでなく、行すべてに適用したいのですが、 (D2 に入力されていたら、A2・B2・C2を入力できなくする) マクロで処理できるでしょうか? マクロ実行は、オープンしたときに実行するようにしたいと考えております。 ご教授お願いします。

  • セルの入力を制限する

    エクセルのセルA1に入力がない場合、A2~A10の範囲のセルを入力できないようにする。 といった感じのVBAのマクロを作成したいのですがどのような方法があるのでしょうか?

  • エクセルのマクロで数式を入力したい

    エクセルのマクロで数式を入力したい エクセルのマクロでシート1のA1に シート2のA1の値を表示させる数式を入力したいと思って Sub tamesi() Sheet1.Activate Range("a1") = "=sheet2!a1" End Sub と書くと動作します ここにIF文をいれてシート2のA1に値がないときは シート1のA1には空白で返したいと思い Sub tameshi2() Sheet1.Activate Range("a1") = "=if(sheet2!a1= 0,"",sheet2!a1)" End Sub と打つと動作しませんでした アプリケーションの定義またはオブジェクトの定義のエラーです と返ってきます。 いろいろやってみたのですが、なにせ勉強し始めで よくわかりませんでした。 教えてください よろしくお願いします

  • エクセルで必須入力

    A列のどこかに入力があるとその行のB~Eまでを必須入力としたいのですが 良い方法はありますでしょうか。 マクロでは無く、できれば関数で簡単にできると助かります。 例A1のセルに入力があるとB1、C1、D1、E1を必須入力とする。 保存時に空白だとメッセージ等で警告を出すか、保存できないようにする。

  • エクセル 値入力にマクロ自動実施方法

     エクセル2003にて、ある箇所のセルに値が入力されたら所定のマクロが実施されるようにする事はできないものでしょうか? 例)  A1 に値が入力されていたら 1 というマクロと連動 A2 に値が入力されていたら 2 というマクロと連動 A3 に値が入力されていたら 3 というマクロと連動 A4 に値が入力されていたら 4 というマクロと連動  A1~A4 になにも無かったら 5 というマクロと連動  (A1~A4に同時に値が入力される事はありません)      としたいのですが、可能なのであれば方法を教えてください。

  • エクセルのマクロのコンボボックスへ入力した

    エクセルのマクロのコンボボックスへ入力した値をセルに表示する際のことで質問があります。 ABCDEという5つのコンボボックスから、A1、A2、A3,A4、A5のセルへ入力していますが、時々CやDの値がなくてEの値を左詰めするというか空白のセルを作らずに入力したいです。 例えばAのコンボボックスには入力でA1、Bのコンボボックスは未入力でCのコンボボックスに入力した値をA2のセルへ入力といった具合にしたいです。 コンボボックスBが未入力なら、 ・コンボボックスCの値をBへ ・コンボボックスDの値をCへ ・コンボボックスEの値をDへ ・コンボボックスEは空白に コンボボックスCが未入力なら、 ・コンボボックスDの値をCへ ・コンボボックスEの値をDへ ・コンボボックスEは空白に コンボボックスDが未入力なら、 ・コンボボックスEの値をDへ ・コンボボックスEの値を入力 という手順を挿入。 で本来のやりたいことの コンボボックスA~EをセルA1:A5の範囲へ入力。 と教えてもらったんですが、それを生かせず、自分なりに考えてみて IF Then Else を使ってA3まではやれたんですが、A4、A5がうまくできなくて挫折しています。 http://www.max.hi-ho.ne.jp/happy/YNxv233.htmlを参考にしてくださいと教わったのですがどれが使えるのかもわからず・・・・。 わかんないことばかりですいません。

  • エクセルのデータをアクセスのテーブルに移動入力する

    エクセルのデータをアクセスのテーブルに移動入力するVBA フォルダAにおいて、a1.xlsxというファイルがあり、 そのsheet1のセル(a,1)=1 A1が1 とします その値をアクセスのデータベース(これもフォルダAにあります)  b.accdbのテーブル1の フィールド1に入力したいときの エクセルマクロのVBAを御教示いただけると助かります さらに続けて フォルダAにおいて、a2.xlsxというファイルがあり、 そのsheet1のセル(a,1)=2 A1が2 とします その値をアクセスのデータベース上記と同じ  b.accdbのテーブル1の フィールド1に追加で入力したいときの エクセルマクロのVBA 以上わかると助かります よろしくお願いします win10 office365

  • 入力するごとにセルを移動させる方法

    今、VBAを組んでいてどうしても分からないところがあるので教えてください。 シート1のA1に値を入力し、シート上に作ったコマンドボタンを押すと、シート2のB1に値が入力されるマクロを組んでいます。新たにシート1のA1に値を入力し、ボタンを押すと、今度はシート2のB2に値が入力される、もう一度同様の作業をするとシート2のB3に値が入力される、そんなVBAってありますか? もし、それがムリなら、日付をフラグとして上記のようなVBAを組む方法はありますか?

このQ&Aのポイント
  • 3年以上使用せず保管。インクが検知されないので新品に入れ替え、何とか検知してくれて、コピーボタンを押しても、白紙で出てきます。ヘットクリーニングを繰り返しても改善せず。原稿は下向きにセットしています。
  • パソコンもしくはスマートフォンのOSはWindows10無線LANで接続されています。関連するソフト・アプリはありません。
  • 電話回線の種類はひかり回線です。
回答を見る

専門家に質問してみよう