プロが教えるわが家の防犯対策術!

エクセル2002を使っています。
  A B
1 b 150
2 b 120
3 a ―
4 c 160

A列に入る文字がa以外であればB列に数値入力でき、aであれば”-”が自動的に表示されるようにしたい。
IF関数を使うと-表示は可能です。=IF(A1="a","-","")
しかし数値を入力すると関数が消えてしまいます。
両方を有効にする方法はないのでしょうか?
どなたかご存知の方、ご教授お願いします。

A 回答 (3件)

◆こんな方法は、いかがでしょうか?


   A   B   C
1  b
2  b
3  a       -
4  c

■手順■
1)C1=IF(A1="a","- ","") と入力します
2)C1の文字位置を、「右詰」にして、式を下にコピー
3)C列の列幅を「1ピクセル」にします
4)これで、一見B列に「-」が表示されたように見えます
5)B1:B10(範囲は実際にあわせてください)を指定して
6)メニューバーの[データ]-[入力規則]を選択します
7)「入力の種類」を「ユーザー設定」にします
8)数式に、 =ISNUMBER(B1)  と入力して、OK
9)これで、B列には、「数値」しか入力できません
    • good
    • 0
この回答へのお礼

ありがとうございました。
たいへん参考になりました。

お礼日時:2007/01/29 20:03

これは表計算ソフトでは、数値・文字列など値を入力すると、式が壊れる仕組みなので、早くあきらめなさい。


時々この手の質問が出るが、原理上、無理です。
(1)しかし表データ入力が1回限りなら、壊れてもいいじゃないですか
(2)VBAを使って工夫する
(3)再度使うとき、B、C列に =IF($A1="a","-","")と入れておき
次ぎの入力のラウンドのときC列をB列に複写するとか。
    • good
    • 0

C列を作って、C列に数字を入力。


B列は =IF(A1="a","-",C1)

入力セルと表示セルを分ける必要があるかと。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!