教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA セル操作】色々なスタイルの罫線を引くにはどうすればいいの?教えて!

f:id:m_kbou:20200419131455p:plain

今回は色々なスタイルの罫線を引く方法について説明します。

 

 

構文

記述方法は以下の通りとなります。

(1)破線を引く

Range(”[セル範囲]”).Borders.LineStyle = xlDash

[説明]:

[セル範囲]には罫線を引きたいセル範囲を指定します。[セル範囲]は「”」(ダブルクォーテーション)で囲みます。「Borders」は上下左右のとの意味になります。「LineStyle = xlDash」は破線を引くとの意味になります。内容を纏めると、「指定した[セル範囲]の上下左右に破線を引いて下さい。」との意味になります。

[記述例]:

Range("B2:C5").Borders.LineStyle = xlDash

(2)点線を引く

Range(”[セル範囲]”).Borders.LineStyle = xlDot

[説明]:

[セル範囲]には罫線を引きたいセル範囲を指定します。[セル範囲]は「”」(ダブルクォーテーション)で囲みます。「Borders」は上下左右のとの意味になります。「LineStyle = xlDot」は点線を引くとの意味になります。内容を纏めると、「指定した[セル範囲]の上下左右に点線を引いて下さい。」との意味になります。

[記述例]:

Range("B2:C5").Borders.LineStyle = xlDot

(3)二重線を引く

Range(”[セル範囲]”).Borders.LineStyle = xlDouble

[説明]:

[セル範囲]には罫線を引きたいセル範囲を指定します。[セル範囲]は「”」(ダブルクォーテーション)で囲みます。「Borders」は上下左右のとの意味になります。「LineStyle = xlDouble」は二重線を引くとの意味になります。内容を纏めると、「指定した[セル範囲]の上下左右に二重線を引いて下さい。」との意味になります。

[記述例]:

Range("B2:C5").Borders.LineStyle = xlDouble

 

使い方

使い方について具体的に説明します。

破線を引く

指定したセル範囲の上下左右に破線を引く方法について説明します。

[プログラミング例]:

Sub サンプル()
  Range("B2:C5").Borders.LineStyle = xlDash
End Sub

内容は、「B2セル~C5セルの範囲で、上下左右に破線を引いて下さい。」との意味になります。

f:id:m_kbou:20210423185132p:plain

※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

①<実行>ボタンには上記のプログラミング例のプログラムが登録されています。この<実行>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210423185145p:plain

②結果は以下の様に表示されます。”B”が文字列の左から2番目に存在するため、MsgBoxで「2」が表示されます。

f:id:m_kbou:20210423185202p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

指定したセル範囲の上下左右に破線を引く方法についての説明は以上です。

 

点線を引く

指定したセル範囲の上下左右に点線を引く方法について説明します。

[プログラミング例]:

Sub サンプル()
  Range("B2:C5").Borders.LineStyle = xlDot
End Sub

内容は、「B2セル~C5セルの範囲で、上下左右に点線を引いて下さい。」との意味になります。

f:id:m_kbou:20210423185301p:plain

※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

①<実行>ボタンには上記のプログラミング例のプログラムが登録されています。この<実行>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210423185314p:plain

②結果は以下の様に表示されます。”B”が文字列の左から2番目に存在するため、MsgBoxで「2」が表示されます。

f:id:m_kbou:20210423185325p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

指定したセル範囲の上下左右に点線を引く方法についての説明は以上です。

 

二重線を引く

指定したセル範囲の上下左右に二重線を引く方法について説明します。

[プログラミング例]:

Sub サンプル()
  Range("B2:C5").Borders.LineStyle = xlDouble
End Sub

内容は、「B2セル~C5セルの範囲で、上下左右に二重線を引いて下さい。」との意味になります。

f:id:m_kbou:20210423185417p:plain

※上記の記述例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

①<実行>ボタンには上記のプログラミング例のプログラムが登録されています。この<実行>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210423185433p:plain

②結果は以下の様に表示されます。”B”が文字列の左から2番目に存在するため、MsgBoxで「2」が表示されます。

f:id:m_kbou:20210423185444p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

指定したセル範囲の上下左右に二重線を引く方法についての説明は以上です。

 

おわりに

状況に合わせて線のスタイルを使い分ければ、より見やすい表が作成できます。是非有効に活用してみて下さい。また、類似の内容として罫線の太さを変更する方法もあります。こちらも参考にして下さい。