- ベストアンサー
Excelでセルが空白のときの値
分かりづらいタイトルですみません セルに何も入っていないときは「未入力」と表示され 入力データを消したときにまた「未入力」と表示されるように したいのですがどうしても思いつきません。 できれば、関数の入っているセルも同様のことをしたいと思っています。(やはりVBAとかになるのでしょうか?) 申し訳ありませんが、よろしくお願いします
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
こんな感じでいいんでしょうか? 仮に対象とするセルをA1とB1とした場合、 1.対象とするシートのシートタブを右クリックし、「コードの表示」 2.現われたVBE画面の右側の白くて広い部分に下記のコードをそのままコピペ Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$1" Or Target.Address = "$B$1" Then If Target.Value = "" Then Target.Value = "未入力" End If End Sub これで、ワークシートに戻り、ためして見てください。
その他の回答 (3)
- mshr1962
- ベストアンサー率39% (7417/18945)
VBAでもできないですね。だって"未入力"という文字が入った時点で未入力でなくなってしまいますから? あえて行うというなら前後の列を使ってIF文で表示があるように見せるくらいです。 例:B列に入力セルとして A2=IF(B2="","未入力","") としてA列の幅を1ピクセルに設定する。 ※C2に数式を入力して書式の配置を右詰でも同様の設定になります。 ※ただしこの場合、B列のセルはセル結合はできません。
お礼
返答ありがとうございます 結合されていると表示されないのですね・・・ (入力セルは結合されていました) なにか方法はないものか・・・ありがとうございました
- kentaro500
- ベストアンサー率29% (237/792)
No.1です よく読むと違いますね 失礼しました IFでは出来ませんね う~ん 関数でできないのかな~ ちょっと考えてみますね
お礼
早速ありがとうございます。 そうなんです。IFでは関数が消えてしまうため出来ないのです>< 条件付書式などもこころ見てみましたがうまくいきませんでした。 ボタンを押して復元などは出来る限り避けたいと思っています。
- kentaro500
- ベストアンサー率29% (237/792)
IF関数を使えばできますよ if=(A1="","未入力","A1") たぶんこうだったかな 条件指定で「もしA1が””(←空欄をあらわします)だったら未入力と表示 違っていたらA1をそのまま表示」 ちなみにA1が1だったら未入力と表示してそれ以外は100と表示する場合は if=(A1="1","未入力","100") いまエクセルが入っていないのでもしかすると違っている可能性がありますが 関数でIFの所をみればすぐにわかると思います
お礼
返答ありがとうございます。 やってみたところ出来ました。驚きです いろいろ試してみたいと思います ありがとうございました。