スポンサーリンク

セルの枠線の表示を消す方法

セルの枠線を消すExcel-VBA

エクセルのワークシート上にはセルの仕切り「枠線」が表示されていますが、消したいこと(非表示化)ありませんか?

ホームページやブログに画像として取り込む時に枠線が無い方が綺麗に見えますから、そんなときぐらいかな。セルの枠線を非表示化するのは。

波乗りアヒル
波乗りアヒル

たった1行VBAコード記述するだけで枠線消せますよ!

スポンサーリンク

セルの枠線を見えなくする方法

セルの枠線をただ単に消す方法は何もVBAだけではないんです。こんな方法もありですかね?

背景色選択で枠線を非表示

まずは、VBAコードなんか使わなくても、見えている部分だけちょっと面倒ですが、枠線を消す方法があります。

それは、背景色を白色にするだけです。

ワークシート
ごく普通のセルの枠線がある状態

範囲を決めてエクセルの背景色選択(塗りつぶしの色選択)すると見事枠線が見えなくなりました。

背景塗りつぶし枠線非表示
塗りつぶしを白色選択でセル枠線見えなくなった

もちろん、セルの書式設定➡塗りつぶし➡背景色➡白色でも同じくセルの枠線が消えますが、こんな方法が知りたくてこのページをご覧になているわけではないので、VBAコードを使った枠線を非表示化を書きます。

DisplayGridinesプロパティで枠線を非表示化

表示されているエクセルワークシート(アクティブウィンドウ)の枠線を非表示化します。

もし複数のワークシートを開いている時は、最前面に表示されているワークシートがアクティブウィンドウとなり、枠線非表示の対象となりましたが、できればエラーの原因にもなるので開くワークシートは1つの方がいいですよ。

VBAコード

Private Sub CommandButton1_Click()
ActiveWindow.DisplayGridlines = False
End Sub

解説
  1. コマンドボタン1をクリックすると
  2. 表示されているワークシートの枠線を非表示にする
  3. マクロ記述終了
VBAで枠線非表示

VBAならばシート全体が枠線非表示化されました。

念の為に、ワークシート上かユーザーフォームに枠線を再表示する為のコードを記述したコマンドボタンを準備しておく事も必要です

VBAコード

Private Sub CommandButton1_Click()
ActiveWindow.DisplayGridlines = True
End Sub

解説
  1. コマンドボタン1をクリックすると
  2. 表示されているワークシートの枠線を再表示する
  3. マクロ記述終了

FalseをTureに変えただけです。

ひとつのボタンで枠線の表示・非表示を切り替える

先ほどの例だとセルの枠線の為に、コマンドボタンが「非表示」「再表示」の2つ必要になりますが、Not演算子を使えば、1つにまとめることができます。

VBAコード

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

解説
  1. コマンドボタン1をクリックすると
  2. 表示されているワークシートが
  3. 枠線が表示されていたら非表示に、非表示なら表示する
  4. Withステートメント終了
  5. マクロ記述終了

これで、現在の枠線の状態を取得してNot演算子で逆の設定値に変更して設定してくれるので、コマンドボタンを押すたびに非表示・再表示を繰り返してくれます。

Excel-VBAもくじへ

コメント