EXCEL - VBA

VBA로 ColorIndex에 대한 색 표시하기

별동산 2024. 4. 12. 09:49
반응형

VBA는 Visual Basic for Application의 약자로,
엑셀, 워드, 파워포인트 등 응용프로그램을 위한 비주얼 베이직이란 의미로,

비주얼 베이직을 이용해서 응용프로그램을 쉽고, 빠르게 사용하는 것입니다.

 

개발 도구 탭에서 Visual Basic을 누르고,

 

비주얼 베이직 에디터에서 삽입 - 모듈을 눌러 Module1을 삽입을 누르면

 

아래와 같이 왼쪽 통합 문서에 Module1이 추가되고, 오른쪽에는 빈 코드 창이 열립니다.

 

이때 코드 창에 아래 코드를 복사해서 붙여 넣고,

Sub 색표시()
    Dim i As Integer
    
    For i = 1 To 128
        Range("a" & i) = i
        Range("b" & i).Interior.ColorIndex = i
    Next
End Sub

 

F5키 또는 세모 모양 아이콘을 눌러 매크로를 실행하면 중간에 오류가 발생하면서 멈추는데, 디버그 버튼을 누르면

 

아래와 같이 노란색 표시가 되면서 i = 57에서 멈췄다고 합니다.

 

위 오류 창을 보면 "아래 첨자 사용이 잘못되었습니다"라고 하는데, ColorIndex가 56까지 뿐이 없어서 그런 것입니다.

윗부분의 네모 모양의 정지 아이콘을 눌러 실행을 멈추고, 왼쪽 엑셀 아이콘을 눌러 엑셀로 돌아갑니다.

 

그러면 A열에는 일련번호가, B열에는 배경색으로 색칠이 되어 있습니다.

1은 검정, 2는 흰색, 3은 빨강, 4는 녹색...입니다.

 

그리고, 아래로 내려가면 숫자는 57번까지 쓰여 있고,
색은 56까지 뿐이 없습니다.

 

57에서 멈췄고, ColorIndex는 56까지만 있는 것을 다시 확인할 수 있습니다.

반응형