#5エクセルVBA入門-Withステートメントで命令をまとめる

Excel VBA

Withステートメントを使い命令をまとめて書く方法を見ていきます。

プロシージャ名:WithTest

Sub WithTest()
    
End Sub

A1セルの値を「hello」

Range("A1").Value = "hello"

フォントを太字

Range("A1").Font.Bold = True

フォントサイズを16ポイント

Range("A1").Font.Size = 16

背景色を赤

Range("A1").Interior.Color = vbRed

ここで、Range(“A1”)を何度も使い冗長だと分かりますね。

そこで、Withを使い
With Range(“A2”)とすることで、まとめてみます。

Sub WithTest2()
    With Range("A2")
        .Value = "hello2"
        .Font.Bold = True
        .Font.Size = 16
        .Interior.Color = vbRed
    End With
End Sub

かなりすっきりしました。
Fontの部分もまとめてみます。

Sub WithTest2()
    With Range("A2")
        .Value = "hello2"
        With .Font
            .Bold = True
            .Size = 16
        End With
       .Interior.Color = vbRed
    End With
End Sub

Withの入れ子です。

コメント