엑셀

Range.Interior 개체와 Range.DisplayFormat.Interior 개체

파란바람이 2020. 4. 29. 17:23

VBA로 작업하다 보면 확인된 셀에 표시하기 위해 Color나 ColorIndex 속성을 이용해 채우기 색을 지정하게 됩니다.

이 때 Range.Interior 개체를 이용해 색상을 지정합니다.

Range("A1").Interior.ColorIndex=19

이렇게 표시된 색상을 다음번 처리할 때 셀에 채우기가 설정되었는지 아닌지로 조건 처리를 하게 됩니다.

 

그런데 조건부서식을 통해 색상을 지정한 셀은 Range.Interior 개체로는 확인되지 않습니다.

 

이럴 때 필요한 개체가 Range.DisplayFormat 개체입니다.

If Range.DisplayFormat.Interior.ColorIndex=19 Then
	MsgBox "확인"
End If

직접 채우기 색을 지정한 것 뿐만아니라 조건부서식과 같이 다른 기능을 통해 지정된 채우기 색도 시각적으로 표시되기만 한다면 확인할 수 있는 개체라서 유용하게 사용할 수 있습니다.

 

MS Docs 참고

https://docs.microsoft.com/en-us/office/vba/api/excel.displayformat