The requirement is to write a query where on one column the retreived data should contain the first letter to be capitalized. The required functionality is same as PROPER function of Excel. This has to be done in MS Access. Any suggestions ?
This is an answer I got from this forum awhile ago...and it works!
A BETTER USE FOR STRCONV
When using proper names, you sometimes need to capitalize the first letter of
each word. For example, you need to convert "john smith" into "John Smith."
With VB3, you had to write a custom function to do the job; VB4's versatile
StrConv routine, on the other hand, lets you do it with one statement:
properName = StrConv(text, vbProperCase)
However, be aware that this variant of StrConv also forces a conversion
to lowercase for all the characters not at the beginning of a word. In other
words, "seattle, USA," is converted to "Seattle, Usa," which you don't want.
You still need to write a custom routine, but you can take advantage of
StrConv to reduce the amount of code in it:
Function ProperCase(text As String) As String
Dim result As String, i As Integer
result = StrConv(text, vbProperCase)
' restore all those characters that
' were uppercase in the original string
For i = 1 To Len(text)
Select Case Asc(Mid$(text, i, 1))
Case 65 To 90 ' A-Z
Mid$(result, i, 1) = Mid$(text, i, 1)
End Select
Next
ProperCase = result
End Function
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.