VBA – Force Proper, Upper, or Lower case automatically



Do you need to automatically change a cells text to Proper, Upper, or Lower case after the user enters it? There are multiple way to accomplish this, and multiple requirements possible. Here is an example that automatically changes everything after it’s entered in a particular column. Hopefully you can build from this example!

1. Press ALT and F11 to open the code window

2. Double click the sheet name you want to automatically

change case

3. Put this code in the code window:

Change Text to Proper Case

Code for Proper case

Private Sub Worksheet_Change(ByVal Target As Excel.Range)



Application.EnableEvents = False

If Target.Column = 5 Then

Target = StrConv(Target, vbProperCase)

End If

Application.EnableEvents = True



End Sub

Change Text to Upper Case


For Upper case you can change

StrConv(Target, vbProperCase)

to

Ucase(Target)

Change Text to Lower Case


For Lower case you can change

StrConv(Target, vbProperCase)

to

Lcase(Target)