Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

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

Error for DateAdd formula on blank date field

=IIf(IsError(DateAdd("d",30,[Text44])),"",DateAdd("d",30,[Text44]))

When the above formula is evaluated for a Text44 textbox  with a "" value, I get an error as the output for the second text box.

What can I do make the formula output a blank value?

Thanks

Glen
0
GPSPOW
Asked:
GPSPOW
3 Solutions
 
SimonCommented:
The problem is that IIF evaluates both parts, even though it only returns a value for one of them.

This is a problem when using calculated controls. I tend to use event handlers that fire after controls are modified to set dependent fields. In this case I'd check that the value in Text44 is a date and only then calculate and populate the dependent field.
0
 
Rey Obrero (Capricorn1)Commented:
try

= IIf([Text44] & "" = "", "", DateAdd("d", 30, [Text44]))
0
 
Dale FyeCommented:
Or you could create a function:
Public Function DateAddPlus(Interval as string, Incr as Double, SomeDate as Variant) as Variant

    IF Len(Trim(SomeDate & " ")) = 0 Then
        DateAddPlus = ""
    Else
        DateAddPlus = DateAdd(Interval, Incr, SomeDate)
    End If

End Function

Open in new window

The advantage of using a function is that the function will be evaluated when you go to a new record and when you make a change in the the first date control.  The syntax you would use to call this function within your Control Source would be something like:

=DateAddPlus("d",30,[Forms]![YourFormName].[text44])
0
 
GPSPOWAuthor Commented:
Thanks to all who gave me the good recommendations.

Glen
0
 
SimonCommented:
I just knocked up a quick test. If the input date field is blank, a simple =DateAdd() calculated field stays blank until a valid date is entered into the input date field. My test used a bound date field to as the input date field. If using unbound fields, using an input mask or validation rule would prevent any non-date values being entered.
0

Featured Post

Free learning courses: Active Directory Deep Dive

Get a firm grasp on your IT environment when you learn Active Directory best practices with Veeam! Watch all, or choose any amount, of this three-part webinar series to improve your skills. From the basics to virtualization and backup, we got you covered.

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