I’m trying to alter a field in an existing database so the person entering data can choose 1 of 3 options, and in another field a date is calculated and inserted. My current database does this with 2 options…the person chooses 6 months or 1 year, and the date 6 months or 1 year beyond is inserted in another field. Here is my current code to do this: PaidThrough: IIf([Member Type]=”6 months”,DateAdd(“m”,6,[Last Paid]),DateAdd(“m”,12,[Last Paid])).
Now I’m adding a 3rd option – 1 month – and I’m not having any success. Here is the closest I’ve come: PaidThrough: IIf([Member Type]=”1 month”,DateAdd(“m”,1,[Last Paid]) or If[Member Type]=”6 months”,DateAdd(“m”,6,[Last Paid]),DateAdd(“m”,12,[Last Paid])) but it says my operators and operands aren’t in order. I’ve tried many different Ifs, elses, or options and none have worked. Any suggestions? I’m thinking I’m missing something simple.
![]() |
Patch reliability is unclear. Unless you have an immediate, pressing need to install a specific patch, don't do it. |
SIGN IN | Not a member? | REGISTER | PLUS MEMBERSHIP |
-
Access Expression (Access 97)
Home » Forums » AskWoody support » Productivity software by function » MS Access and database help » Access Expression (Access 97)
- This topic has 12 replies, 6 voices, and was last updated 21 years, 8 months ago.
AuthorTopicWSdeebock
AskWoody LoungerJuly 30, 2003 at 7:36 pm #391270Viewing 1 reply threadAuthorReplies-
WSHansV
AskWoody LoungerJuly 30, 2003 at 7:54 pm #698302 -
WSdeebock
AskWoody Lounger
-
-
WSMarkLiquorman
AskWoody LoungerJuly 31, 2003 at 11:53 am #698531>>Any suggestions? I’m thinking I’m missing something simple.<<
I have a suggestion. Don't store that calculated date in your database! This is a clear violation of database normalization rules. Why not change your MemberType field to an integer (dropping the "months"). Then whenever you need to calculate the PaidThru value, you can do a simple calculation: DateAdd("m",[MemberType],[LastPaid])
-
WSdeebock
AskWoody LoungerJuly 31, 2003 at 12:19 pm #698540Mark,
We’re wondering why you feel this is a violation of database normalization? The field we’re calculating is the expiration date of the member, calculated by what type of member they are and when they paid their membership fee. Only one date is stored at a time and it changes each time they renew their membership. Comments? -
WScharlotte
AskWoody LoungerJuly 31, 2003 at 12:25 pm #698544Do you have the date paid stored? What Mark is talking about is that if you have the date paid stored as well, the storing the expiration date as well is unnecessary because it can always be calculated. If you store only the expiration date, then it is not a violation of normalization.
-
WSdeebock
AskWoody Lounger -
WSMarkLiquorman
AskWoody LoungerJuly 31, 2003 at 11:29 pm #698742It’s easy to overlook the rules, mostly because it is easier to do the calculation on data entry and store the value, rather than having to do it every time. And we all have done this at one time or another for various reasons (some good, some bad). But you just need to recognize when you are storing such calculated data, even if you then make a conscientious decision to go ahead anyway. But keep it quiet, so the normalization police won’t come after you!
-
-
-
WSMarkLiquorman
AskWoody LoungerJuly 31, 2003 at 12:46 pm #698551Because you are storing a value in a field that is derived solely from a calculation involving other fields in the record. The inherent risk is that you must remember to recalculate this field whenever ANY of the underlying fields get changed; and the problem is that fields don’t always get changed via a single form that you can control. There may be multiple forms, update queries, etc. Therefore, the PaidThrough date in your database may not always be correct, whereas deriving it when needed will ALWAYS be correct.
-
WSBat17
AskWoody Lounger -
WSMarkLiquorman
AskWoody LoungerJuly 31, 2003 at 10:09 pm #698733I presume they have stored the DatePaid and the Months. I’m not sure what can change that would alter the calculation of the expiration date? If, for example, they change the number of months (let’s say everybody is getting a free month), then you want the expiration date to change automatically.
-
WSpatt
AskWoody Lounger -
WSMarkLiquorman
AskWoody Lounger
-
-
-
-
Viewing 1 reply thread -

Plus Membership
Donations from Plus members keep this site going. You can identify the people who support AskWoody by the Plus badge on their avatars.
AskWoody Plus members not only get access to all of the contents of this site -- including Susan Bradley's frequently updated Patch Watch listing -- they also receive weekly AskWoody Plus Newsletters (formerly Windows Secrets Newsletter) and AskWoody Plus Alerts, emails when there are important breaking developments.
Get Plus!
Welcome to our unique respite from the madness.
It's easy to post questions about Windows 11, Windows 10, Win8.1, Win7, Surface, Office, or browse through our Forums. Post anonymously or register for greater privileges. Keep it civil, please: Decorous Lounge rules strictly enforced. Questions? Contact Customer Support.
Search Newsletters
Search Forums
View the Forum
Search for Topics
Recent Topics
-
Global data centers (AI) are driving a big increase in electricity demand
by
Kathy Stevens
10 hours, 8 minutes ago -
Office apps read-only for family members
by
b
12 hours, 44 minutes ago -
Defunct domain for Microsoft account
by
CWBillow
9 hours, 36 minutes ago -
24H2??
by
CWBillow
1 hour, 30 minutes ago -
W11 23H2 April Updates threw ‘class not registered’
by
WindowsPersister
21 hours, 29 minutes ago -
Master patch listing for April 8th, 2025
by
Susan Bradley
14 hours, 43 minutes ago -
TotalAV safety warning popup
by
Theodore Nicholson
9 hours, 32 minutes ago -
two pages side by side land scape
by
marc
2 days, 10 hours ago -
Deleting obsolete OneNote notebooks
by
afillat
2 days, 12 hours ago -
Word/Outlook 2024 vs Dragon Professional 16
by
Kathy Stevens
1 day, 15 hours ago -
Security Essentials or Defender?
by
MalcolmP
1 day, 18 hours ago -
April 2025 updates out
by
Susan Bradley
24 minutes ago -
Framework to stop selling some PCs in the US due to new tariffs
by
Alex5723
1 day, 11 hours ago -
WARNING about Nvidia driver version 572.83 and 4000/5000 series cards
by
Bob99
1 day, 1 hour ago -
Creating an Index in Word 365
by
CWBillow
2 days, 4 hours ago -
Coming at Word 365 and Table of Contents
by
CWBillow
16 hours, 16 minutes ago -
Windows 11 Insider Preview Build 22635.5170 (23H2) released to BETA
by
joep517
3 days, 7 hours ago -
Has the Microsoft Account Sharing Problem Been Fixed?
by
jknauth
3 days, 11 hours ago -
W11 24H2 – Susan Bradley
by
G Pickerell
3 days, 12 hours ago -
7 tips to get the most out of Windows 11
by
Alex5723
3 days, 10 hours ago -
Using Office apps with non-Microsoft cloud services
by
Peter Deegan
3 days, 4 hours ago -
I installed Windows 11 24H2
by
Will Fastie
1 day, 10 hours ago -
NotifyIcons — Put that System tray to work!
by
Deanna McElveen
3 days, 16 hours ago -
Decisions to be made before moving to Windows 11
by
Susan Bradley
9 hours, 41 minutes ago -
Port of Seattle says ransomware breach impacts 90,000 people
by
Nibbled To Death By Ducks
4 days ago -
Looking for personal finance software with budgeting capabilities
by
cellsee6
3 days, 8 hours ago -
ATT/Yahoo Secure Mail Key
by
Lil88reb
3 days, 9 hours ago -
Devices with apps using sprotect.sys driver might stop responding
by
Alex5723
4 days, 17 hours ago -
Neowin – 20 times computers embarrassed themselves with public BSODs and goofups
by
EP
5 days, 2 hours ago -
Slow Down in Windows 10 performance after March 2025 updates ??
by
arbrich
1 day, 1 hour ago
Recent blog posts
Key Links
Want to Advertise in the free newsletter? How about a gift subscription in honor of a birthday? Send an email to sb@askwoody.com to ask how.
Mastodon profile for DefConPatch
Mastodon profile for AskWoody
Home • About • FAQ • Posts & Privacy • Forums • My Account
Register • Free Newsletter • Plus Membership • Gift Certificates • MS-DEFCON Alerts
Copyright ©2004-2025 by AskWoody Tech LLC. All Rights Reserved.