본문 바로가기
Range object

[Range 개체] Interior속성

2023. 7. 1.

Interior속성을 이용해 셀 내부의 서식을 변경할 수 있습니다.

Range.Interior property (Excel)

Office VBA reference topic

learn.microsoft.com

도움말에는 다음과 같은 내용이 있습니다.

지정된 객체의 내부를 나타내는 Interior 객체를 반환합니다 .

이전글(Font속성)에서도 쓴 것처럼 해당 개체의 속성을 사용할 수 있다는 뜻입니다.

아래 그림은 Interior개체의 속성입니다.

도움말 내용처럼 Interior 속성을 통해 Interior 개체에 접근하는 것을 볼 수 있습니다.

배경색을 변경하는 간단한 예제입니다.

Sub ChangeCellInteriorColor()

    Dim rng As Range
    Set rng = Range("A1")

    ' Interior 개체에 접근하여 셀의 배경색 변경
    rng.Interior.Color = RGB(255, 0, 0)    ' 빨간색으로 설정

    Set rng = Nothing
    
End Sub

셀의 배경색과 패턴을 설정하는 예제입니다.

Sub ChangeCellInteriorColor()
    
    Dim rng As Range
    Set rng = Range("A1")
    
    ' 셀 A1의 배경색과 패턴을 설정
    With rng.Interior
        .Color = RGB(255, 106, 95)
        .Pattern = xlPatternGray16
    End With
    
    Set rng = Nothing
    
End Sub

위 코드를 실행한 결과입니다.

매크로 기록을 해보면 색상을 지정한 경우, Pattern을 따로 지정하지 않으면 xlPatternSolid가 적용되는 걸 알 수 있습니다.

Sub Macro1()
'
' Macro1 Macro
'

'
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .Color = 65535
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
    
End Sub

ThemeColor를 지원하는 버전에서는 배경색으로 좀 더 다양한 표현을 할 수 있습니다.

아래 코드는 ThemeColor를 선택하고 매크로 기록한 예제입니다.

Sub Macro1()
'
' Macro1 Macro
'

'
    With Selection.Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorAccent6
        .TintAndShade = 0
        .PatternTintAndShade = 0
    End With
    
End Sub

TintAndShade는 색을 밝게 하거나 어둡게 합니다. -1(가장 어두운 색)부터 1(가장 밝은색)까지 사용가능합니다.

아래 그림은 ThemeColor를 xlThemeColorAccent6로 설정하고 TintAndShade를 G열에 있는 값으로 설정한 예입니다.

XlThemeColor상수는 아래 링크를 참고하세요.

XlThemeColor enumeration (Excel)

Office VBA reference topic

learn.microsoft.com