Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 458
  • Last Modified:

How can I add a wildcard text element to a nested IIF in text box form

Hi, this is probably simple for someone who does a lot of formulas. Here is my formulas that works great in my ms access 2007 text box.

=IIf([YrsofSvc]>=25,"25",IIf([YrsofSvc]>=15,"20",IIf([YrsofSvc]>=5,"15",IIf([YrsofSvc]>=1,"10",""))))

The [YrsofSvc] is returning a number so this is working fine. It is getting this number from another formula that returns the number + either Years or Months. So, some people return 2 Years, (or whatever), but others return "4 months"  Here's the formula for that, if it matters:
=IIf((DateDiff("m",[Date 1],Date()))>12,(Round(DateDiff("m",[Date 1],Date())/12)) & " " & "Years",(DateDiff("m",[Date 1],Date()) & " " & "months"))

So, what I am trying to do is get the first IIF statement to return "5" IF the 2nd statement is producing the word "months" . Some people have 7 years of service and that currently is resulting in a return of 15 days of vacation. However, for those that have 7 months only, NOT years, I want it to return a "5" (5 days of vacation).

So how do I get my if statement to evaluate whether it is showing months or years? I tried to do a wildcard in the IIF statement if it saw the text "months" but can't figure out how - not sure if that is right avenue.

Any help appreciated!
Diane
0
zgrrl
Asked:
zgrrl
  • 2
1 Solution
 
Helen FeddemaCommented:
I would do the calculated expressions in a query, not in a textbox's control source -- much easier to work with!  I would redo the 2nd formula to always yield months (no text, just a number), and then it could be used in the 1st formula.
0
 
zgrrlAuthor Commented:
Helen,

Doh! Why didn't I think of that? I did this and now it's working fine. For those who may be reading this, here is my final formula after I calculated for months instead of years.

=IIf([TotalMonths]>=300,"25",IIf([TotalMonths]>=180,"20",IIf([TotalMonths]>=60,"15",IIf([TotalMonths]>=12,"10",IIf([TotalMonths]>=6,"5","0")))))

I did use my original formula still to show the "5 months" or "2 years" etc. But doing the months calculation is what worked for me to get the awarded vacation allotment to show properly, so thank you!.
0
 
zgrrlAuthor Commented:
Thank you!
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now