【Excel VBA】セルの書式変更アレコレ

当ページのリンクには広告が含まれている可能性があります。
VBAセル書式設定

こんにちは、ユーキです。

今回は、セルの書式変更について紹介をしたいと思います。

目次

背景色を変更

背景色の変更は、Interiorプロパティに対して設定を行います。色の指定は、ColorIndexを指定するやり方と、ColorでRGBを指定するやり方があります。
柔軟な色指定をしたいのであれば、RGB指定を指定するのが良いでしょう。

    ActiveSheet.Cells(1, 2).Interior.ColorIndex = 5
    ActiveSheet.Cells(3, 2).Interior.Color = RGB(255, 0, 0)

上記コードを実行した結果が以下になります。

背景色指定結果

罫線をつける

罫線を指定するには、Borders.LineStyleプロパティを指定します。
セルの上下左右の対象を指定し、線のタイプを設定します。上下左右の指定を省略すると上下左右を指定したことと同じになります。

    '対象セルの上下左右 実線
    ActiveSheet.Cells(3, 3).Borders.LineStyle = xlContinuous
    '対象セルの上のみ 破線
    ActiveSheet.Cells(5, 3).Borders(xlEdgeTop).LineStyle = xlDash
    '対象セルの下のみ 一点鎖線
    ActiveSheet.Cells(7, 3).Borders(xlEdgeBottom).LineStyle = xlDashDot
    '対象セルの左のみ ニ点鎖線
    ActiveSheet.Cells(9, 3).Borders(xlEdgeLeft).LineStyle = xlDashDotDot
    '対象セルの右のみ 点線
    ActiveSheet.Cells(11, 3).Borders(xlEdgeRight).LineStyle = xlDot
    '2 本線
    ActiveSheet.Cells(11, 3).Borders.LineStyle = xlDouble
    '斜破線
    ActiveSheet.Cells(13, 3).Borders.LineStyle = xlSlantDashDot
    '線なし
    ActiveSheet.Cells(15, 3).Borders.LineStyle = xlLineStyleNone
    '内側横線(対象セルが複数で内側の横線)
    ActiveSheet.Range("E5:G8").Borders(xlInsideHorizontal).LineStyle = xlContinuous
    '内側縦線(対象セルが複数で内側の縦線)
    ActiveSheet.Range("E10:G13").Borders(xlInsideVertical).LineStyle = xlContinuous
    '右下がり斜め線
    ActiveSheet.Range("E15:G17").Borders(xlDiagonalDown).LineStyle = xlContinuous
    '右上がり斜め線
    ActiveSheet.Range("E19:G21").Borders(xlDiagonalUp).LineStyle = xlContinuous

上記コードを実行した結果は、以下のようになります。

罫線指定結果

セル連結する

セルの連結には、Mergeメソッドを使用します。解除するには、UnMegreメソッドを使用します。セルの指定は、Rangeで一気に指定をしてもよいですし、左端と右端を指定するやり方どちらでも問題ありません。

    ActiveSheet.Range("I3:J4").Merge
    ActiveSheet.Range(Cells(6, 9), Cells(7, 11)).Merge
スポンサーリンク
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

旅好き職業プログラマ。文系大学卒業後、ITソフトウエア開発会社に勤務してプログラミング言語を学ぶ。現在は転職し、プロジェクトマネージャ的ポジションで生産管理システムの開発にあたる。
得意言語は、VB、VB.NET、C#.NET、Java、SQLなど。

目次