[VBA] 빈칸이면 윗 값을 쓰는 코드

2021. 5. 27. 14:21VBA

 

위와 같은 상황에서, A열을 꽉 채우고 싶을 때

Sub AutoFill()
   

Set AutofillSht = Sheets("Sheet1")

    AutofillSht.Select
    Set Alphabet= AutofillSht.Rows("1:10").Find(What:=Trim("알파벳"))
    Set Num = AutofillSht.Rows("1:10").Find(What:=Trim("숫자"))


        loopCnt = Num.CurrentRegion.Rows.Count - 1 '헤더를 제외한 만큼 반복

    For i = 1 To loopCnt
        Set Alphabet= Alphabet.Offset(1, 0)
        If Alphabet= "" Then '만약 가져온 Alphabet이 빈칸이면
            Alphabet.Offset(0, 0) = Alphabet.Offset(-1, 0).Value 'Alphabet의 윗 값을 현재 Alphabet에 넣는다
        End If
 
        
    Next i
End Sub

 

이상입니다.