Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion GroupsFormsForms ProgrammingQueriesModules / DAO / VBAReports / PrintingMacrosDatabase DesignSecurityConversionImporting / LinkingSQL Server / ADPMultiuser / NetworkingReplicationSetup / ConfigurationDeveloper ToolkitsActiveX ControlsNew UsersGeneral 1General 2
Access DirectoryToolsTutorialsUser Groups
Related Topics
SQL ServerOther DB ProductsMS OfficeMore Topics ...

MS Access Forum / Forms Programming / April 2005

Tip: Looking for answers? Try searching our database.

AfterUpdate and LostFocus Events do not fire

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Gina - 20 Apr 2005 06:21 GMT
... when passed via tab key or even the last letter changed ...
I wanted to change whatever string the user may type into a control to a
capital first letter
I put the call to a module func into both the AfterUpdate and the LostFocus
event of the control

   If Not IsNull(Me.TypModell) Then
       TypeModel = Validation.fCapitalString(Me.TypeModel.Value)
   End If

I cannot put it into the before update event as I can't write at that
stage....

I put a halt onto both events .... but somehow and sometimes they do not
want to react

two days ago all worked well .... both events were halted
________________________
Public Function fCapitalString(ByVal strInString As String) As String
Dim strOut, strFirst, strRest, strTmp, strAll As String
Dim j As Long
Dim arWords, i, n

   If IsNull(strInString) Then Exit Function

   n = InStr(1, strInString, "-")

   If n = 0 Then
       arWords = Split(strInString, " ")

       strOut = ""
       strTmp = strInString
       i = UBound(arWords)

       For j = 0 To i

           strFirst = UCase(Left(arWords(j), 1))
           strRest = Mid(arWords(j), 2)
           If j = i Then
               strOut = strOut & strFirst & strRest
           Else
               strOut = strOut & strFirst & strRest & " "
           End If
           Debug.Print strOut
       Next
   Else
       arWords = Split(strInString, "-")

       strOut = ""
       strTmp = strInString
       i = UBound(arWords)

       For j = 0 To i

           strFirst = UCase(Left(arWords(j), 1))
           strRest = Mid(arWords(j), 2)
           If j = i Then
               strOut = strOut & strFirst & strRest
           Else
               strOut = strOut & strFirst & strRest & "-"
           End If
           Debug.Print strOut
       Next
   End If
   fCapitalString = strOut
End Function
______________

maybe it has all to do with the moon ;-)

or perhaps my code and/or wrong events ??
maybe someone has an idea for me ??

Gina
SteveS - 20 Apr 2005 08:31 GMT
> ... when passed via tab key or even the last letter changed ...
> I wanted to change whatever string the user may type into a control to a
[quoted text clipped - 70 lines]
>
> Gina

I think there is a typo: is it "TypModell" or "TypModel"?

>     If Not IsNull(Me.TypModell) Then
                              ^^ two L's

>         TypeModel = Validation.fCapitalString(Me.TypeModel.Value)
                                                           ^ one L
>     End If

I don't understand the "Validation" part. Try calling the function using:

         TypeModel = fCapitalString(Me.TypeModel)

Also, I hope you don't mind... I modified your code a little. The code in the
second "IF..Else..End IF" was duplicated.

' *** begin code *******
Public Function fCapitalString(ByVal strInString As String) As String
    Dim strOut As String, strFirst As String
    Dim strRest As String, strTmp As String, strAll As String
    Dim j As Long, i As Integer, n As Integer
    Dim arWords()

    If IsNull(strInString) Then Exit Function

    n = InStr(1, strInString, "-")

    If n = 0 Then
        arWords = Split(strInString, " ")
    Else
        arWords = Split(strInString, "-")
    End If

' this was the same code
    strOut = ""
    strTmp = strInString
    i = UBound(arWords)

    For j = 0 To i

        strFirst = UCase(Left(arWords(j), 1))
        strRest = Mid(arWords(j), 2)
        If j = i Then
            strOut = strOut & strFirst & strRest
        Else
            strOut = strOut & strFirst & strRest & " "
        End If
        Debug.Print strOut
    Next

    fCapitalString = strOut
End Function
' ****** end code ****

Signature

Steve
--------------------------------
"Veni, Vidi, Velcro"
(I came, I saw, I stuck around.)

Gina - 20 Apr 2005 15:59 GMT
Steve,

thanks for your answer..and your
thanks for the modifications ... of course !!! good idea
I wasn't sure at the time how many different things (space , '-', '.' ) they
might input so it was still in testing version ...

well .... I was kind of very tired after about 20 hours at the pc yesterday
.... I am translating the names of my controls and ( if necessary) funktions
etc
from german to english ... so it does make it easier for the english
speaking rest of the worls.- that was the reason for the misspelling

re the events not firing:
now I put the function call in the nextControlInTabOrder_GotFocus Event and
that way it does get executed for sure!!!
but it shouldn't be that way ...  I am using access 2k german - maybe it
should learn a bit more english ;-)

Gina

> > ... when passed via tab key or even the last letter changed ...
> > I wanted to change whatever string the user may type into a control to a
[quoted text clipped - 124 lines]
> End Function
> ' ****** end code ****
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.