Range 개체

ColumnWidth 속성

노만e 2025. 3. 10. 19:34

엑셀 VBA에서 ColumnWidth 속성은 열의 너비를 설정하거나 가져오는 기능을 제공합니다.

즉, 엑셀의 열 크기를 조절할 때 사용됩니다.


1. 기본 문법

Range("열 범위").ColumnWidth = 숫자
  • 열 범위 → 너비를 설정할 열 또는 셀 범위
  • 숫자 → 열 너비 (기본 단위: 문자 1개 너비)

📌 기본 열 너비 = 8.43 (약 8~9개의 문자 크기)

📌 셀의 값에 맞게 열 너비 자동 조정은 AutoFit 사용


2. 단일 열의 너비 설정

Sub 단일열_너비()
Columns("A").ColumnWidth = 20
End Sub

📌 A열의 너비를 20으로 설정


3. 여러 열의 너비 설정

Sub 여러열_너비()
Columns("A:C").ColumnWidth = 15
End Sub

📌 A~C열의 너비를 15로 설정


4. 특정 범위 내 열 너비 설정

Sub 특정범위_열너비()
Range("A1:D10").ColumnWidth = 12
End Sub

📌 A1:D10 범위의 열 너비를 12로 설정


5. 현재 열 너비 가져오기

Sub 현재_열너비_출력()
MsgBox "A열의 현재 너비: " & Columns("A").ColumnWidth
End Sub

📌 A열의 현재 너비를 메시지 박스로 출력


6. 셀 범위의 열 너비 자동 조정 (AutoFit)

Sub 열너비_자동조정()
Columns("A:C").AutoFit
End Sub

📌 A~C열의 너비를 내용에 맞게 자동 조정


7. 전체 워크시트의 열 너비 자동 조정

Sub 전체_열너비_자동조정()
Cells.EntireColumn.AutoFit
End Sub

📌 전체 시트의 열 너비를 자동 조정


8. 모든 시트에서 열 너비 자동 조정

Sub 모든시트_열너비_자동조정()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Sheets
ws.Cells.EntireColumn.AutoFit
Next ws
End Sub

📌 현재 통합 문서의 모든 시트에서 열 너비 자동 조정


9. 열 너비가 특정 값보다 크면 자동 조정

Sub 특정값_초과_자동조정()
Dim ws As Worksheet, col As Range
Set ws = ActiveSheet

For Each col In ws.UsedRange.Columns
If col.ColumnWidth > 20 Then
col.AutoFit
End If
Next col
End Sub

📌 열 너비가 20보다 큰 경우만 자동 조정


10. 열 너비를 원래 기본값으로 복원

Sub 열너비_초기화()
Columns("A:C").ColumnWidth = 8.43 ' 기본값으로 초기화
End Sub

📌 A~C열의 너비를 기본값 8.43으로 복원


11. 선택된 열의 너비 설정

Sub 선택된열_너비()
Selection.EntireColumn.ColumnWidth = 18
End Sub

📌 사용자가 선택한 열의 너비를 18로 설정


12. 열 너비를 두 배로 설정

Sub 열너비_두배()
Dim col As Range
For Each col In Columns("A:C")
col.ColumnWidth = col.ColumnWidth * 2
Next col
End Sub

📌 A~C열의 너비를 현재 값의 두 배로 변경


📝 정리

기능
VBA 코드
단일 열 너비 설정
Columns("A").ColumnWidth = 20
여러 열 너비 설정
Columns("A:C").ColumnWidth = 15
특정 범위 내 열 너비 설정
Range("A1:D10").ColumnWidth = 12
현재 열 너비 가져오기
MsgBox Columns("A").ColumnWidth
열 너비 자동 조정 (AutoFit)
Columns("A:C").AutoFit
전체 워크시트 열 자동 조정
Cells.EntireColumn.AutoFit
모든 시트 열 자동 조정
For Each ws In ThisWorkbook.Sheets: ws.Cells.EntireColumn.AutoFit: Next ws
특정 값 이상이면 자동 조정
If col.ColumnWidth > 20 Then col.AutoFit
열 너비 초기화 (기본값 8.43)
Columns("A:C").ColumnWidth = 8.43
선택된 열 너비 설정
Selection.EntireColumn.ColumnWidth = 18
열 너비를 두 배로 조정
col.ColumnWidth = col.ColumnWidth * 2

🔥 VBA의 ColumnWidth 속성을 활용하면 원하는 대로 열의 크기를 조절할 수 있습니다! 🚀