Range 개체

Fill 메서드

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

엑셀 VBA에서 Fill 메서드는 자동 채우기 기능과 관련하여 셀의 서식을 적용하거나 데이터를 채우는 기능을 제공합니다.

주로 Interior.Fill, Font.Fill, FillDown, FillRight, FillUp, FillLeft 등 다양한 속성과 함께 사용됩니다.


1. FillDown (아래 방향으로 채우기)

Sub FillDown_예제()
Range("A1").Value = "Hello"
Range("A1:A10").FillDown
End Sub

📌 A1 값을 A2:A10까지 복사 (아래로 자동 채우기)

📌 Excel의 Ctrl + D 기능과 동일


2. FillRight (오른쪽 방향으로 채우기)

Sub FillRight_예제()
Range("A1").Value = "Hello"
Range("A1:D1").FillRight
End Sub

📌 A1 값을 B1, C1, D1까지 복사 (오른쪽으로 자동 채우기)

📌 Excel의 Ctrl + R 기능과 동일


3. FillUp (위쪽 방향으로 채우기)

Sub FillUp_예제()
Range("A10").Value = "Hello"
Range("A1:A10").FillUp
End Sub

📌 A10 값을 A1:A9까지 복사 (위쪽으로 자동 채우기)


4. FillLeft (왼쪽 방향으로 채우기)

Sub FillLeft_예제()
Range("D1").Value = "Hello"
Range("A1:D1").FillLeft
End Sub

📌 D1 값을 A1, B1, C1까지 복사 (왼쪽으로 자동 채우기)


5. 배경 색상 채우기 (Interior.Fill)

Sub 배경색_채우기()
Range("B2:B10").Interior.Color = RGB(255, 255, 0) ' 노란색 채우기
End Sub

📌 B2:B10 셀의 배경 색을 노란색으로 변경


6. 그라데이션 효과 적용 (Interior.Pattern)

Sub 그라데이션_채우기()
With Range("A1:A10").Interior
.Pattern = xlPatternLinearGradient
.Gradient.Degree = 90
End With
End Sub

📌 A1:A10에 그라데이션 효과 적용 (엑셀 2010 이상 지원)


7. 폰트 색상 채우기 (Font.Fill)

Sub 폰트색_변경()
Range("A1:A10").Font.Color = RGB(255, 0, 0) ' 빨간색
End Sub

📌 A1:A10 셀의 폰트 색상을 빨간색으로 변경


8. 패턴으로 셀 채우기 (Interior.PatternColor)

Sub 패턴_채우기()
With Range("A1:A5").Interior
.Pattern = xlPatternChecker ' 체커보드 패턴
.PatternColorIndex = xlAutomatic
End With
End Sub

📌 A1:A5 범위를 체커보드 패턴으로 채우기


9. Fill 적용 후 데이터 채우기 (FillDown + AutoFill)

Sub FillDown_AutoFill()
Range("A1").Value = 1
Range("A2").Value = 2
Range("A1:A2").AutoFill Destination:=Range("A1:A10"), Type:=xlFillSeries
End Sub

📌 A1:A10에 1, 2, 3, ... 자동 채우기


10. Fill을 활용한 날짜 자동 채우기

Sub 날짜_자동채우기()
Range("B1").Value = Date
Range("B1").AutoFill Destination:=Range("B1:B10"), Type:=xlFillSeries
End Sub

📌 오늘 날짜부터 B1:B10까지 자동 증가 채우기


📝 정리

기능
VBA 코드
아래 방향 자동 채우기 (FillDown)
Range("A1:A10").FillDown
오른쪽 방향 자동 채우기 (FillRight)
Range("A1:D1").FillRight
위쪽 방향 자동 채우기 (FillUp)
Range("A1:A10").FillUp
왼쪽 방향 자동 채우기 (FillLeft)
Range("A1:D1").FillLeft
배경 색상 채우기 (Interior.Fill)
Range("A1:A10").Interior.Color = RGB(255, 255, 0)
폰트 색상 채우기 (Font.Fill)
Range("A1:A10").Font.Color = RGB(255, 0, 0)
셀 패턴 채우기 (Interior.Pattern)
Range("A1:A5").Interior.Pattern = xlPatternChecker
그라데이션 효과 추가
Range("A1:A10").Interior.Pattern = xlPatternLinearGradient
숫자/날짜 자동 채우기
Range("A1:A10").AutoFill Destination:=Range("A1:A10"), Type:=xlFillSeries

🔥 VBA의 Fill 기능을 활용하면 데이터를 자동 채우거나, 서식을 적용하여 더욱 효율적으로 작업할 수 있습니다! 🚀