VBAでエクセル画面上のゼロ「0」の値を空欄にする

ウィンドウの操作
スポンサーリンク

エクセルで表を作成しますが、値がゼロ「0」がまばらにあると意外と見ずらいと感じたことありませんか?

でも数式などが入っているので消すわけにはいかないのですが、「0」だけを空欄にする方法があったら便利だと思いませんか?

とりっぷぼうる
とりっぷぼうる

方法は簡単で、ゼロ「0」だけを見つけて空欄にする(DisplayZeroプロパティ)を使うだけで、簡単なのでぜひ取り入れてみませんか?

目次

DisplayZeroプロパティ

DisplayZeroプロパティとActiveWindowを組み合わせると、現在表示している数字のゼロ「0」を表示したり非表示にしたりすることができるようになります。

  • 数字のゼロ「0」を非表示・・・False
  • 数字のゼロ「0」を表示・・・・True

では実際にここでは、ユーザーフォームに配置したコマンドボタンに数字のゼロ「0」を表示・非表示にするVBAコードを書いていきましょう。

数字のゼロ「0」を非表示

数字のゼロ「0」を非表示にするには、DisplayZeroをFalseに指定することでできるようになります。

数字のゼロ「0」を空欄にする

Private Sub CommandButton1_Click()
With ActiveWindow
.DisplayZero = False
End With
End Sub

VBA解説
  1. コマンドボタン1が押されたら
  2. 現在表示中のワークシートを操作する
  3. 数字のゼロ「0」を非表示にする
  4. withステートメント終了
  5. マクロ終了

これで、コマンドボタン1が押されたら数字のゼロ「0」が非表示になります。

数字のゼロ「0」を再表示

数字のゼロ「0」を非表示にできたら、再表示できないと不都合なので、DisplayZeroをTrueに指定することでできるようになります。

数字のゼロ「0」を表示する

Private Sub CommandButton1_Click()
With ActiveWindow
.DisplayZero = True
End With
End Sub

VBA解説
  1. コマンドボタン1が押されたら
  2. 現在表示中のワークシートを操作する
  3. 数字のゼロ「0」を表示する
  4. withステートメント終了
  5. マクロ終了

非表示のFalseを表示のTrueに変更するだけで完成するのとても簡単です。

この方法でも問題ないのですが、コマンドボタンを2つ用意しなくてはいけないのですが、ちょっと工夫すると1つのコマンドボタンで非表示も再表示もできるんですよ!

クリックするたびに数字のゼロ「0」の表示/非表示を切り替え

なんでもかんでもできるわけではないのですが、この種の表示・非表示の切り替えには、FalseやTrueの代わりにNot演算子を使用するとできるようになります。

数字のゼロ「0」の表示/非表示を切り替え

Private Sub CommandButton1_Click()
With ActiveWindow
.DisplayZero = Not .DisplayZero
End With
End Sub

VBA解説
  1. コマンドボタン1が押されたら
  2. 現在表示中のワークシートを操作する
  3. 数字のゼロ「0」の表示・非表示を切り替える
  4. withステートメント終了
  5. マクロ終了

意外と簡単ですよね。

実用的かどうかはわかりませんが、知っていて損するものでもないので、見栄え良くするには一つの方法ですよ。

ウィンドウの操作関連

数字のゼロ「0」の非表示・表示以外にもいくつか利用しているのでご紹介します。

ボタン1つで表示を切り替えたり元に戻したりできると便利なので、ほかの表示方法も知っていて損はないと思いますよ!

目次