Código para funcionar em uma coluna inteira, talvez um loop

Pessoal boa noite, não entendo nada de VBA e escrevo minhas macros na base da experimentação rsrsrs. Enfim, estou fazendo uma planilha e as pessoas que vão utilizá-la não se atentam ao preenchimento e vou precisar que os dados de determinada coluna estejam em caixa alta. Fazendo uma pesquisa eu encontrei o código abaixo aqui no próprio fórum, que automatiza o preenchimento, mas não consigo fazer ele funcionar em mais linhas apenas em uma e vou precisar que ele esteja em toda uma coluna. Alguém pode me ajudar?

Segue o código:

Private Sub Worksheet_Change(ByVal target As Range)

If target = Range(“A1”) Then

Range(“A1”).Value = UCase(Range(“A1”).Value)

End If

End Sub

1 Curtida

Boa tarde @Rapha6013

Troque a sua rotina por esta abaixo.
Veja que eu coloquei um range muito grande, melhor colocar apenas as suas colunas que vc queira alterar para caixa alta (UCASE)
Abs

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim xrng As Range
    Set xrng = Range("A1:z1048576")
    Dim TAcells As String
    If Not Application.Intersect(xrng, Range(Target.Address)) Is Nothing Then
        
        TAcells = Target.Address
        Range(TAcells).Value = UCase(Range(TAcells).Value)

    End If
End Sub