Solved

After Update Code

Posted on 2006-06-29
12
207 Views
Last Modified: 2008-03-17
Hello,

I'm not sure how to write this code.

Here's the code I have in place,...

Private Sub txtAttendanceSubject_AfterUpdate()
Me.txtAttendanceNote = 1
End Sub

But here's what I would like,...

Private Sub txtAttendanceSubject_AfterUpdate()
Me.txtAttendanceNote = Null
IF txtAttendanceSubject = Any Value, then = 1
IF txtAttendanceSubject = No Value, then = Null

So basically, if txtAttendanceSubject equals a value of any kind, txtAttendanceSubject will ALWAYS = 1

But if there's nothing in txtAttendanceSubject, OR the value has since been removed, THEN it needs to = Null
End Sub
0
Comment
Question by:xp310
  • 4
  • 2
  • 2
  • +2
12 Comments
 
LVL 65

Expert Comment

by:Jim Horn
ID: 17011531
The AfterUpdate event fires AFTER you UPDATE, so if you want to impliment code that changes the value, you'll want to do it in BeforeUpdate, like this:

Private Sub txtAttendanceSubject_BeforeUpdate(Cancel as Integer)

Me.txtAttendanceNote = Null
IF Nz(Me.txtAttendanceSubject, 'Wahoo') <> "Wahoo"
    Me.txtAttendanceSubject = 1
else
    Me.txtAttendanceSubject = NULL
end if

End Sub
0
 
LVL 65

Expert Comment

by:Jim Horn
ID: 17011536
(slight correction, need double quotes)

IF Nz(Me.txtAttendanceSubject, "Wahoo") <> "Wahoo"   '<-- Replace "Wahoo" with whatever floats your boat
0
 
LVL 65

Expert Comment

by:rockiroads
ID: 17011537
Private Sub txtAttendanceSubject_AfterUpdate()
    if NZ(Me.txtAttendanceSubject ,"") = "" then Me.txtAttendanceNote = Null else Me.txtAttendanceNote = 1
End Sub
0
 
LVL 65

Accepted Solution

by:
rockiroads earned 500 total points
ID: 17011564
Oopps copy/paste wrong field?

Private Sub txtAttendanceSubject_AfterUpdate()
    if NZ(Me.txtAttendanceSubject ,"") = "" then Me.txtAttendanceSubject = Null else Me.txtAttendanceSubject = 1
End Sub

but tell me, do u intentionally change Subject to 1 if a value has been entered?
If u do the above, it will call the AfterUpdate function again


0
 
LVL 65

Expert Comment

by:rockiroads
ID: 17011607
Just curious if u are always going to set the Subject to 1 or nothing, why dont u create some kind of checkbox instead

0
Enterprise Mobility and BYOD For Dummies

Like “For Dummies” books, you can read this in whatever order you choose and learn about mobility and BYOD; and how to put a competitive mobile infrastructure in place. Developed for SMBs and large enterprises alike, you will find helpful use cases, planning, and implementation.

 

Author Comment

by:xp310
ID: 17011743
Jim,

I tried your code in the Before Update - but for my example, I can't tie it to a specific word.  So I replaced "wahoo" with "".  And in doing that, the code doesn't work & highlights that specific row I changed.

As for the before & after update - I think I have a very different understanding how those events work.  To me, it would make sense to put it in the after update.  If the code runs "Before" then how is it going to determine the correct answer.  It would make sense that it would run "After" to determine if a value of any kind has been entered.

Eh, like I said...  I'm sure my sense of what those events do is complete screwed up.  :-)

Rockiroads,

I tried your code, but it didn't work for me it just resulted in errors.  As for your comment about me changing the values - well your codes are backwards I think.

This is basically what I want...

"IF txtAttendanceSubject = ANY VALUE then txtAttendanceNote will = 1"

So, txtAttendanceNote only signifies a value has been entered into the subject field.  if there's no 1, then there shouldn't be a subject.
0
 
LVL 34

Expert Comment

by:jefftwilley
ID: 17015144
This one checks that subject isn't null or blank. If that's true, then note = 1 else note = null

Private Sub txtAttendanceSubject_AfterUpdate()

If Not Nz(me.txtAttendanceSubject.value) = ""  then
    me.txtAttendanceNote.value = 1
else
    me.txtAttendanceNote.value = Null
end if

End Sub
0
 
LVL 65

Expert Comment

by:rockiroads
ID: 17015745
xp310
this is what I thought, Im sure it was a typo

my first post, this should do what u want

Private Sub txtAttendanceSubject_AfterUpdate()
    if NZ(Me.txtAttendanceSubject ,"") = "" then Me.txtAttendanceNote = Null else Me.txtAttendanceNote = 1
End Sub


did this not work?

my 2nd post was a reflection of what u said in your initial question, but then I queried this - u wanted to update the subject. I thought this was wrong.
0
 
LVL 54

Expert Comment

by:nico5038
ID: 17019875
<no comment>

Nic;o)
0
 
LVL 34

Expert Comment

by:jefftwilley
ID: 17020510
Hello All,
Rocki's solution works...do not accept mine as answer as I was not first.
J
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In the previous article, Using a Critera Form to Filter Records (http://www.experts-exchange.com/A_6069.html), the form was basically a data container storing user input, which queries and other database objects could read. The form had to remain op…
In a multiple monitor setup, if you don't want to use AutoCenter to position your popup forms, you have a problem: where will they appear?  Sometimes you may have an additional problem: where the devil did they go?  If you last had a popup form open…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…
Access reports are powerful and flexible. Learn how to create a query and then a grouped report using the wizard. Modify the report design after the wizard is done to make it look better. There will be another video to explain how to put the final p…

863 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

24 Experts available now in Live!

Get 1:1 Help Now