Tuesday, 23 February 2016

Macro to Change All Text in a Cell Range to Initial Capital Letters

Macro to Change All Text in a Range to Uppercase Letters


Sub Uppercase()
   ' Loop to cycle through each cell in the specified range.
   For Each x In Range("A1:A5")
      ' Change the text in the range to uppercase letters.
      x.Value = UCase(x.value)
   Next
End Sub
    

Macro to Change All Text in a Range to Lowercase Letters


Sub Lowercase()
   ' Loop to cycle through each cell in the specified range.
   For Each x In Range("B1:B5")
      x.Value = LCase(x.Value)
   Next
End Sub
    

Macro to Change All Text in a Cell Range to Initial Capital Letters


Sub Proper_Case()
   ' Loop to cycle through each cell in the specified range.
   For Each x In Range("C1:C5")
      ' There is not a Proper function in Visual Basic for Applications.
      ' So, you must use the worksheet function in the following form:
      x.Value = Application.Proper(x.Value)
   Next
End Sub
    

Testing the Sample Macros

To test the sample macros, follow these steps:
  1. In the same workbook that contains the macros, enter the following sample data into a new worksheet:
        A1: toM         B1: toM        C1: toM
        A2: sUe         B2: sUe        C2: sUe
        A3: joe SMITH   B3: joe SMITH  C3: joe SMITH
        A4: mary        B4: mary       C4: mary
        A5: LORI        B5: LORI       C5: LORI
          
    NOTE: This sample data contains text formatted in various cases that you can use to verify how each macro works.
  2. Run each of the macros.
The text in the range specified in the macro (in the line that reads "For each x in ...") will be formatted in uppercase, lowercase, or initial capitals, as appropriate.

No comments:

Post a Comment