Run-time error '3464'

Discussion in 'Microsoft Access Form Coding' started by Guest, Oct 13, 2004.

  1. Guest

    Guest Guest

    When I try to look for a duplicate value in a record I keep getting the
    following error....

    Run-time error '3464'

    Data type Mismatch in criteria expression

    here is the code I am using when I get the error....

    Dim temp As String

    Me.DrawingNum.SetFocus
    temp = DLookup("[DrawingNum]", "tbl_DrawingsAndData", _
    "[DrawingNum]=" &
    Me.DrawingNum.Text)

    Me.DrawingNum.SetFocus
    If Me.DrawingNum.Text = temp Then
    MsgBox "This Drawing Control Already Exists, Please See View Drawing
    Controls"
    Exit Sub
    End If
     
    Guest, Oct 13, 2004
    #1
    1. Advertisements

  2. DLookup will return a Null value if it doesn't find any match, and a Null
    value can only be assigned to a Variant, not a String. You could either
    change temp to be a Variant and check it using IsNull(), or you could wrap
    the DLookup in an NZ(). See IsNull Function and NZ Function in the help file
    for details.

    --
    Brendan Reynolds (MVP)
    http://brenreyn.blogspot.com

    The spammers and script-kiddies have succeeded in making it impossible for
    me to use a real e-mail address in public newsgroups. E-mail replies to
    this post will be deleted without being read. Any e-mail claiming to be
    from brenreyn at indigo dot ie that is not digitally signed by me with a
    GlobalSign digital certificate is a forgery and should be deleted without
    being read. Follow-up questions should in general be posted to the
    newsgroup, but if you have a good reason to send me e-mail, you'll find
    a useable e-mail address at the URL above.


    "Playa" <> wrote in message
    news:...
    > When I try to look for a duplicate value in a record I keep getting the
    > following error....
    >
    > Run-time error '3464'
    >
    > Data type Mismatch in criteria expression
    >
    > here is the code I am using when I get the error....
    >
    > Dim temp As String
    >
    > Me.DrawingNum.SetFocus
    > temp = DLookup("[DrawingNum]", "tbl_DrawingsAndData", _
    > "[DrawingNum]=" &
    > Me.DrawingNum.Text)
    >
    > Me.DrawingNum.SetFocus
    > If Me.DrawingNum.Text = temp Then
    > MsgBox "This Drawing Control Already Exists, Please See View Drawing
    > Controls"
    > Exit Sub
    > End If
    >
    >
    >
     
    Brendan Reynolds, Oct 13, 2004
    #2
    1. Advertisements

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. @ndy

    *.* FINDFIRST + ERROR 3464 (updating tables)

    @ndy, Nov 25, 2004, in forum: Microsoft Access Form Coding
    Replies:
    1
    Views:
    219
    MacDermott
    Nov 26, 2004
  2. Jessica

    run-time error 3464

    Jessica, Feb 17, 2005, in forum: Microsoft Access Form Coding
    Replies:
    2
    Views:
    217
    Jessica
    Feb 17, 2005
  3. Evan M

    Error: 3464 Data type mismatch

    Evan M, Feb 28, 2005, in forum: Microsoft Access Form Coding
    Replies:
    2
    Views:
    309
    Evan M
    Feb 28, 2005
  4. Guest

    error 3464 -- data type mismatch in criteria expression

    Guest, Jun 6, 2006, in forum: Microsoft Access Form Coding
    Replies:
    5
    Views:
    243
    Douglas J. Steele
    Jun 6, 2006
  5. Momof2

    Coding help run-time error '3464'

    Momof2, Dec 23, 2008, in forum: Microsoft Access Form Coding
    Replies:
    9
    Views:
    180
    Marshall Barton
    Dec 24, 2008
Loading...

Share This Page