IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

PB recherche si champ deja present dans table


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    81
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 81
    Points : 50
    Points
    50
    Par défaut PB recherche si champ deja present dans table
    Salut tout le monde,

    J'ai la procédure suivante qui me permet de savoir si une date est deja presente dans une table :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Function verifdatedanstable() As Boolean
    Dim Rsql As String
    Dim rst As DAO.Recordset
    Rsql = " SELECT DISTINCTROW [DATE_RESERVATION]FROM DATE_RESERVATION "
    Rsql = Rsql & " WHERE [DATE_RESERVATION]= " & Me.TxtDate & ";"
    Set rst = CurrentDb.OpenRecordset(Rsql)
    If ((rst.EOF)) Then
    verifdatedanstable = False
    Else
    verifdatedanstable = True
    End If
    End Function
    ensuite j'utilise cette fonction de la facon suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    If (verifdatedanstable = False) Then
            rs.AddNew
            dit.AddNew
            dat.AddNew
            Me.Txt_CADRE.SetFocus
            Me.transfert1jourpascritere
            rs.Update
            dit.Update
            dat.Update
            MsgBox ("Reservation ajoutée")
     
        Else
            rs.AddNew
            dat.AddNew
            Me.Txt_CADRE.SetFocus
            Me.transfert1jourpascriterejourexiste
            rs.Update
            dat.Update
            MsgBox ("Reservation ajoutéeaaaa")
    Le probleme c'est qu'il prend toujours la valeur false que la valeur soit dans la table ou qu'elle ne soit pas..
    Si quelqu'un pourrait m'aider..
    Merci d'avance
    stan314

  2. #2
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    La date est à encadrer avec # et passée au format US : mm/dd/yyyy

    Quant à ton code, il peut largement être optimisé.

    Au niveau SQL, en enlevant DISTINCTROW, au niveau du VBA, en supprimant la structure conditionnelle.

    Function verifdatedanstable() As Boolean
    Dim rst As DAO.Recordset
    Set rst = CurrentDb.OpenRecordset("SELECT [DATE_RESERVATION] FROM DATE_RESERVATION WHERE [DATE_RESERVATION]= #" & Format(Me.TxtDate,"mm/dd/yyyy") & "#")
    verifdatedanstable = rst.EOF
    End Function
    Il est normal que le champs possède le même nom que la table ?

Discussions similaires

  1. [AC-2003] Champ hypertext inopérant dans table images
    Par sabredebois dans le forum Access
    Réponses: 7
    Dernier message: 11/05/2011, 15h49
  2. Recherche de seulement deux valeurs dans table associative
    Par olive47 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 14/02/2010, 20h55
  3. Création champ Primary Key dans table existante
    Par marcleb1 dans le forum SQL
    Réponses: 2
    Dernier message: 07/09/2009, 06h42
  4. Requête pour une recherche sur champs multiple d'une table
    Par fred777 dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 07/10/2008, 16h33
  5. Réponses: 12
    Dernier message: 27/01/2006, 15h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo