From: JohnW on 2 Apr 2010 18:21 I have the following fields I'm working with; they are all on the same Form which comes from a query. MultiClassDisc TotalTuitions TotalTuitions is calculated by the sum of (4) other Tuition fields. I have a check box to trigger the calculation of the MultiClassDisc field which works off of the following code. If MultiClass.Value = vbTrue Then MultiClassDisc.Value = TotalTuitions * 0.1 Else MultiClassDisc.Value = 0 End If It works Ok.....when I check the box it calculates MultiClassDisc to be 10% of the TotalTuitions and when I click the box off it changes the value back to zero. The issue I need help with is that the TotalTuitions value will change sometimes and when it does if the box is checked the MultiClassDisc field will not change automatically to reflect the new 10% value. If I uncheck the box and then re-check it will show the new value but obviously I need it to work automatically. Any suggestions? Thank you -- JCW
From: Marshall Barton on 3 Apr 2010 09:17 JohnW wrote: >I have the following fields I'm working with; they are all on the same Form >which comes from a query. > >MultiClassDisc >TotalTuitions > >TotalTuitions is calculated by the sum of (4) other Tuition fields. I have >a check box to trigger the calculation of the MultiClassDisc field which >works off of the following code. > >If MultiClass.Value = vbTrue Then > MultiClassDisc.Value = TotalTuitions * 0.1 > Else > MultiClassDisc.Value = 0 > End If > >It works Ok.....when I check the box it calculates MultiClassDisc to be 10% >of the TotalTuitions and when I click the box off it changes the value back >to zero. > >The issue I need help with is that the TotalTuitions value will change >sometimes and when it does if the box is checked the MultiClassDisc field >will not change automatically to reflect the new 10% value. If I uncheck the >box and then re-check it will show the new value but obviously I need it to >work automatically. > If you do not need to allow users to change the MultiClassDisc value, then I think you should avoid using code to calculate the discount. Instead, use an expression in the MultiClassDisc text box: =IIf(MultiClass, TotalTuitions * 0.1, 0.0) Because the expression refers to both the MultiClass and TotalTuitions controls, the recalculation should be automatic whenever either one is changed. -- Marsh MVP [MS Access]
From: JohnW on 3 Apr 2010 12:05 Marshall Unfortunately the MultiClassDisc field will be changed from time to time. That's why I wanted to use the checkbox and the code to be able to turn it off and on as needed. -- JCW "Marshall Barton" wrote: > JohnW wrote: > >I have the following fields I'm working with; they are all on the same Form > >which comes from a query. > > > >MultiClassDisc > >TotalTuitions > > > >TotalTuitions is calculated by the sum of (4) other Tuition fields. I have > >a check box to trigger the calculation of the MultiClassDisc field which > >works off of the following code. > > > >If MultiClass.Value = vbTrue Then > > MultiClassDisc.Value = TotalTuitions * 0.1 > > Else > > MultiClassDisc.Value = 0 > > End If > > > >It works Ok.....when I check the box it calculates MultiClassDisc to be 10% > >of the TotalTuitions and when I click the box off it changes the value back > >to zero. > > > >The issue I need help with is that the TotalTuitions value will change > >sometimes and when it does if the box is checked the MultiClassDisc field > >will not change automatically to reflect the new 10% value. If I uncheck the > >box and then re-check it will show the new value but obviously I need it to > >work automatically. > > > > If you do not need to allow users to change the > MultiClassDisc value, then I think you should avoid using > code to calculate the discount. Instead, use an expression > in the MultiClassDisc text box: > =IIf(MultiClass, TotalTuitions * 0.1, 0.0) > > Because the expression refers to both the MultiClass and > TotalTuitions controls, the recalculation should be > automatic whenever either one is changed. > > -- > Marsh > MVP [MS Access] > . >
From: Bob Barrows on 3 Apr 2010 15:25 JohnW wrote: > I have the following fields I'm working with; they are all on the > same Form which comes from a query. > > MultiClassDisc > TotalTuitions > > TotalTuitions is calculated by the sum of (4) other Tuition fields. > I have a check box to trigger the calculation of the MultiClassDisc > field which works off of the following code. > > If MultiClass.Value = vbTrue Then > MultiClassDisc.Value = TotalTuitions * 0.1 > Else > MultiClassDisc.Value = 0 > End If > > It works Ok.....when I check the box it calculates MultiClassDisc to > be 10% of the TotalTuitions and when I click the box off it changes > the value back to zero. > > The issue I need help with is that the TotalTuitions value will change > sometimes and when it does if the box is checked the MultiClassDisc > field will not change automatically to reflect the new 10% value. If > I uncheck the box and then re-check it will show the new value but > obviously I need it to work automatically. > > Any suggestions? Thank you Create an Onchange event handler for the TotalTuitions control. I would suggest copying the above code into a new function in form's module, and then calling the function from the event handler subs for both controls. -- Microsoft MVP - ASP/ASP.NET - 2004-2007 Please reply to the newsgroup. This email account is my spam trap so I don't check it very often. If you must reply off-line, then remove the "NO SPAM"
From: Marshall Barton on 3 Apr 2010 16:01 JohnW wrote: >Unfortunately the MultiClassDisc field will be changed from time to time. >That's why I wanted to use the checkbox and the code to be able to turn it >off and on as needed. Ok, then call the checkbox's code from the TotalTuitions text box's AfterUpdate event: checkbox_Click If the TotalTuitions text box contains an expression, then you will have to do that calculation in code that is called from each of the (four?) text boxes. -- Marsh MVP [MS Access]
|
Pages: 1 Prev: Convert Currency to String but keep commas Next: joining two iif statements |