Range 개체

Border(테두리)

노만e 2025. 3. 12. 06:33

엑셀 VBA에서 Border 개체셀, 범위, 차트 등의 테두리(선)를 설정 및 변경하는 데 사용됩니다.


1. 기본 Border 속성

✅ 엑셀에서 다룰 수 있는 테두리 종류

테두리 위치
속성 (Excel VBA)
왼쪽 테두리
Borders(xlEdgeLeft)
오른쪽 테두리
Borders(xlEdgeRight)
위쪽 테두리
Borders(xlEdgeTop)
아래쪽 테두리
Borders(xlEdgeBottom)
모든 외곽선
Borders(xlAround)
모든 내부선
Borders(xlInsideHorizontal), Borders(xlInsideVertical)

2. 테두리 스타일 관련 속성

속성
설명
LineStyle
선 스타일 설정
Color
선 색상 (Index 방식)
ColorIndex
기본 색상 팔레트 색상 적용
Weight
선 굵기 설정

✅ 선 스타일(LineStyle) 종류

스타일
VBA 코드
실선
xlContinuous
점선
xlDot
대시선
xlDash
대시 점선
xlDashDot
이중선
xlDouble
없음
xlNone

✅ 선 굵기(Weight) 종류

굵기
VBA 코드
얇음
xlHairline
보통
xlThin
굵음
xlMedium
매우 굵음
xlThick

3. 테두리 설정 예제

📌 특정 셀(A1)의 모든 테두리 설정

Sub 셀_테두리_설정()
With Range("A1").Borders
.LineStyle = xlContinuous ' 실선
.Weight = xlThin ' 보통 굵기
.Color = RGB(0, 0, 255) ' 파란색
End With
End Sub

📌 특정 범위(A1:D5)의 테두리 설정

Sub 범위_테두리_설정()
With Range("A1:D5").Borders
.LineStyle = xlContinuous ' 실선
.Weight = xlMedium ' 굵기 설정
.Color = RGB(255, 0, 0) ' 빨간색
End With
End Sub

📌 개별 테두리 설정 (위, 아래, 좌, 우)

Sub 개별_테두리_설정()
With Range("B2").Borders(xlEdgeTop) ' 위쪽 테두리
.LineStyle = xlContinuous
.Weight = xlThick
.Color = RGB(255, 0, 0) ' 빨간색
End With
With Range("B2").Borders(xlEdgeBottom) ' 아래쪽 테두리
.LineStyle = xlDashDot
.Weight = xlThin
.Color = RGB(0, 255, 0) ' 초록색
End With
End Sub

📌 내부선만 설정 (셀 내부 가로선 & 세로선)

Sub 내부_테두리_설정()
With Range("A1:D5")
.Borders(xlInsideHorizontal).LineStyle = xlContinuous ' 내부 가로선
.Borders(xlInsideVertical).LineStyle = xlContinuous ' 내부 세로선
.Borders(xlInsideHorizontal).Weight = xlThin
.Borders(xlInsideVertical).Weight = xlThin
End With
End Sub

📌 모든 외곽선만 설정

Sub 외곽선_설정()
With Range("A1:D5").Borders(xlAround)
.LineStyle = xlContinuous
.Weight = xlThick
.Color = RGB(0, 0, 255) ' 파란색
End With
End Sub

4. 테두리 삭제

Sub 테두리_삭제()
Range("A1:D5").Borders.LineStyle = xlNone
End Sub

📝 정리

기능
VBA 코드
모든 테두리 설정
.Borders.LineStyle = xlContinuous
위쪽 테두리 설정
.Borders(xlEdgeTop).LineStyle = xlContinuous
아래쪽 테두리 설정
.Borders(xlEdgeBottom).LineStyle = xlDash
왼쪽/오른쪽 테두리 설정
.Borders(xlEdgeLeft) / .Borders(xlEdgeRight)
외곽선 설정
.Borders(xlAround).LineStyle = xlContinuous
내부선 설정
.Borders(xlInsideHorizontal) & .Borders(xlInsideVertical)
테두리 색 변경
.Borders.Color = RGB(255,0,0)
테두리 굵기 변경
.Borders.Weight = xlThick
테두리 삭제
.Borders.LineStyle = xlNone

🔥 VBA에서 Borders 개체를 활용하면 보고서 자동화 및 가독성 향상에 유용합니다! 🚀