- 締切済み
値の代入?
お世話になっております。 Excelでご教授ください。 A1、B1、C1とセルがあります。 A1に何かの文字がはいるとC1セルにOKと表示されるようにしています。 A1が空白の場合は空白になります。 B1は入力規則でOKとNOのみ選択できるようにしています。 ここからがわからないのですが、C1に表示されたOKまたは空白をB1に代入(?)させたいのですがそれが上手くいきません。 わかる方いましたらご教授ください。
- みんなの回答 (6)
- 専門家の回答
みんなの回答
- koko88okok
- ベストアンサー率58% (3839/6543)
ANo.3,5です。 > B1にOKを表示するのは問題なくできるのですが、さらに、ここから記入者にB1のセルでOKとNOを選択式で選ばせたいのです。 > B1の式をいれて入力規則で選ばせると式が壊れてしまうのです・・・。 A1に入力された結果を、判別するためにB1に数式を入力しているはずです。にも拘らず、何故改めて記入者による判別が必要なのかが解りません。 仮に、ご希望のように設定できた場合は、B1の数式で「OK」と判定しても、記入者が「NO」と入力する間違いが発生する可能性があります。 B1に「NO」の判別も必要なら、B1の数式に「OK」「NO」「空白」が表示される数式を入力すればよいのではないでしょうか?
- koko88okok
- ベストアンサー率58% (3839/6543)
ANo.3です。 > A1に何か入力したらB1にOKを表示させ、A1を消したらB1は空白したいのです。 > さらにB1はOKかNOを記入者が選べるようにしたいため、入力規則でOKかNOのみの選択にしています。 セルB1に「=IF(A1="","","OK")」を入力またはコピペしてみてください。 セルA1に何かが入力されれば、セルB1に「OK」と表示されます。 (スペースでも「OK」が表示される点が問題ですが・・・) セルB1への入力規則は不要です。理由は、 セルA1に何かが入力されれば、B1に「OK」が表示される訳ですから、セルB1には何も入力する必要はないはずですし、 入力すると上記のような数式が削除されますので、A1が空白なのにB1には「OK」が表示される場合も発生します。
- imogasi
- ベストアンサー率27% (4737/17069)
おかしな質問だよ。 C1を参照してB1に式を入れても、入力規則でOKかNOの選択をすると B1の式が壊れて、それ以後役立たなくなる(のはエクセルの常識)。 何でそんなこと(C1とB1の連動性)する必要があるのか説明が必要。 それに(A1,B1,C1は)どういう順序で入力されるのか。 A1に入力ーー>関数でC1に反映ーー>B1に反映ーー>OKか空白ー B1に入力規則でOKがダメならNOを選択?C1のOKは何に対するOKか B1のOKかNOは何に対して判断して入力(選択)するのか? 全体のストーリー・流れを説明しないと。 なんとなくVBAでやらないとだめなような気がするが。
お礼
ありがとうございます。 やりたいことですが、A1とB1は初期状態は空白状態になっています。 A1はフリーの入力にしています、B1は入力規則でOKとNOを選べるようにしています。 A1に何か入力したらB1にOKを表示させ、A1を消したらB1は空白したいのです。 さらにB1はOKかNOを記入者が選べるようにしたいため、入力規則でOKかNOのみの選択にしています。 C1は実際必要ないのかもしれませんが、おっしゃるとおり選択した時点で式が壊れてしまうので、C1で表示させてB1にそれを反映できないかなと思ったのでした。 どうぞよろしくお願いいたします。
- koko88okok
- ベストアンサー率58% (3839/6543)
質問内容がよく分かりません。何か条件が不足しているように思います。 > A1に何かの文字がはいるとC1セルにOKと表示されるようにしています。 > C1に表示されたOKまたは空白をB1に代入(?)させたい からは、A1に何か入力(仮に「あ」)された状態では、 あ OK OK のようなものが、ご希望のようにも思われます。 一方、 > B1は入力規則でOKとNOのみ選択できるようにしています。 とも記述されています。 『・・・代入(?)・・・』の意味が理解できません。
お礼
ありがとうございます。 Excelの知識が乏しいためおかしいかもしれません。 やりたいことに関してはANO.4さんに書きましたので どうぞよろしくお願いいたします。
- mshr1962
- ベストアンサー率39% (7417/18945)
C1には"OK"かブランクですか?"NO"ではなく? B1=C1&"" または B1=IF(C1="OK","OK","") でセットは可能です。数式でなく文字ということだとマクロになりますね。 シート見出しを右クリックして、"コードの表示"でVisualBasicEditorを起動 右上のスペースに Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$1" Then Target.Offset(0, 1) = Target.Offset(0, 2) End If End Sub を貼り付ける。 上記マクロでA1が変更されるとB1にC1の内容を貼り付けます。 A列全体で同じにしたい場合は Target.Address = "$A$1" を Target.Column = 1 と書き換えてください。
お礼
やりたいことに関してANo.4さんに書きましたので、どうぞよろしくお願いいたします。
- sick65
- ベストアンサー率46% (12/26)
B1に =C1 じゃだめですか?
お礼
入力規則で選択すると式が壊れてしまうのですよね・・。 やりたいことに関してはANo.4さんに書きましたので、どうぞよろしくお願いいたします。
お礼
ありがとうございます。 B1にOKを表示するのは問題なくできるのですが、 さらに、ここから記入者にB1のセルでOKとNOを選択式で選ばせたいのです。 B1の式をいれて入力規則で選ばせると式が壊れてしまうのです・・・。 ここがネックになっております、どうぞよろしくお願いいたします。