Sub ChgTextCase() Dim strinput As String Dim strPrmt As String Dim strTitle As String strPrmt = "uppercase=1" & vbCr & "lowercase=2" & vbCr & "propercase=3" strTitle = "select text case" strinput = Application.InputBox(Prompt:=strPrmt, _ Title:=strTitle, Default:=vbUpperCase, Type:=1) chgCase strinput End Sub Private Function chgCase(strCase As String) Dim strPrmt As String Dim strTitle As String Dim objRange As Range Dim iR As Integer Dim iC As Integer Dim intRow As Integer Dim intCol As Integer Dim strCellTxt On Error GoTo Err_Control strTitle = "Change Case of Cells" strPrmt = "Select cells to change case ('Ok' for All)" Set objRange = Application.InputBox(Prompt:=strPrmt, _ Title:=strTitle, Default:=ActiveSheet.UsedRange.Address, Type:=8) intRow = objRange.Rows.Count intCol = objRange.Columns.Count For iR = 1 To intRow For iC = 1 To intCol strCellTxt = objRange.Item(iR, iC) If Not strCellTxt = "" Then objRange.Item(iR, iC) = StrConv(strCellTxt, strCase) End If Next iC Next iR Exit_Here: Exit Function Err_Control: MsgBox Err.Description & Err.Number & " " & Err.Source Resume Exit_Here End Function