+ Reply to Thread
Results 1 to 4 of 4

Excel 2003 - Capitalisation question

Hybrid View

  1. #1
    Registered User
    Join Date
    01-12-2011
    Location
    Leeds, England
    MS-Off Ver
    Excel 2003
    Posts
    18

    Excel 2003 - Capitalisation question

    I was wondering if there is a way to set up a cell to format the text that is entered into it in the following way

    The Cat Sat On The Mat

    I know that there is the =PROPER(cell) function, but this seems to be to correct it after the event, and what i am trying to do is to force this to happen as users fill in the cells

    Ideally i would like to find a way to do this without VBA's

    Hope that makes sense

    Belegarath75
    Last edited by Belgarath75; 06-09-2011 at 10:51 AM. Reason: Solution offered that solved my question

  2. #2
    Forum Expert shg's Avatar
    Join Date
    06-20-2007
    Location
    The Great State of Texas
    MS-Off Ver
    2010, 2019
    Posts
    40,689

    Re: Excel 2003 - Capitalisation question

    It can't be done without VBA. You could use data validation to require the user to enter data that way (=exact(A1, upper(a1))), but not to change it.
    Entia non sunt multiplicanda sine necessitate

  3. #3
    Forum Expert MickG's Avatar
    Join Date
    11-23-2007
    Location
    Banbury,Oxfordshire
    Posts
    2,650

    Re: Excel 2003 - Capitalisation question

    Look Here:-
    http://www.cpearson.com/excel/ChangingCase.aspx

  4. #4
    Registered User
    Join Date
    01-12-2011
    Location
    Leeds, England
    MS-Off Ver
    Excel 2003
    Posts
    18

    Re: Excel 2003 - Capitalisation question

    My fears confirmed

    I think this will be the way to go for my problem, from the link given

    Private Sub Worksheet_Change(ByVal Target As Range)
        If Target.Cells.Count > 1 Then
            Exit Sub
        End If
        On Error GoTo ErrHandler:
        If Not Application.Intersect(Me.Range("A1:A10"), Target) Is Nothing Then
            If IsNumeric(Target.Value) = False Then
                Application.EnableEvents = False
                'Target.Value = StrConv(Target.Text, vbLowerCase)
                'Target.Value = StrConv(Target.Text, vbUpperCase)
                'Target.Value = StrConv(Target.Text, vbProperCase)
                Application.EnableEvents = True
            End If
        End If
    ErrHandler:
        Application.EnableEvents = True
    End Sub
    Thanks to you both for the input, much appreciated

+ Reply to Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts

Search Engine Friendly URLs by vBSEO 3.6.0 RC 1