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

VBA Access Discussion :

Valeur existante ou pas dans une table


Sujet :

VBA Access

  1. #1
    Invité
    Invité(e)
    Par défaut Valeur existante ou pas dans une table
    bonjour à tous ,
    j'ai un petit souci que je ne sais pas comment aborder.
    Selon qu'un champ "Journee" au format date qui est indexe sans doublons existe ou non dans MaTable
    Si la date existe deja dans la table je voudrais que le form de saisie s'ouvre en mode allowEdits, si la date n'existe pas je voudrais que le form de saisie s'ouvre en mode allowadditions.
    J'ai un form de filtrage pour choisir la date. Je pense que c'est à ce niveau que doit s'effectuer la verification mais je ne sais pas comment.
    Si quelqu'un peut m'aider, merci d'avance.

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 645
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 645
    Points : 34 350
    Points
    34 350
    Par défaut
    Bonjour,
    tu peux utiliser la fonction DCount()
    pour chercher si tu as déjà une valeur identique dans ta table:
    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    If DCount("Journée","TaTable","Journée=#" & Me.TonchampDate &"#")>0 Then
     'il existe déjà un enregistrement
    Else
     'il n'y a pas d'enreigstrement aevc cette date
    End if

  3. #3
    Invité
    Invité(e)
    Par défaut
    merci jp mais j'ai un mesage d'erreur de compilation sur la ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If DCount("Journée","CheckList","Journée=#" & Me.SaisieDate &"#)>0 Then
    attendu : separateur de liste ou )
    Dernière modification par Invité ; 26/05/2008 à 15h20.

  4. #4
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 645
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 645
    Points : 34 350
    Points
    34 350
    Par défaut
    corrigée pardon (manquait un guillemet)

  5. #5
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If DCount("Journée", "CheckList", "Journée=#" & Me.SaisieDate & "#") > 0 Then
    ça me dit erreur d'execution 2001 ! Comment je peux savoir à quoi ça correspond ça ,

  6. #6
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 645
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 645
    Points : 34 350
    Points
    34 350
    Par défaut
    as-tu un format US dans ta cellule ?
    Sinon, il faut faire un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If DCount("Journée", "CheckList", "Journée=#" & Format(Me.SaisieDate,"MM/dd/yyyy") & "#") > 0 Then

  7. #7
    Invité
    Invité(e)
    Par défaut
    non mon format de date est bien "dd,mm,yyyy"

  8. #8
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If DCount("Journée", "CheckList", "Journée=#" & Format(Me.SaisieDate, "mm/dd/yyyy") & "#") > 0 Then
    ça me dit toujours "erreur d'execution 2001 "

  9. #9
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 645
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 645
    Points : 34 350
    Points
    34 350
    Par défaut
    salut,
    petite question : ton champs journée est de type date ou de type texte ?

  10. #10
    Invité
    Invité(e)
    Par défaut
    bonjour JP,

    te fatigues plus... tout est ok ça fonctionne divinement bien !

    sans ces pu.... d'accents que j'avais devant les yeux !

    Je te remercie mille fois pour ta patience et l'interet que tu as bien voulu porter à mon souci.

Discussions similaires

  1. Déterminer la Valeur la plus grande dans une table
    Par arnaud_verlaine dans le forum Langage SQL
    Réponses: 9
    Dernier message: 22/08/2014, 23h35
  2. Réponses: 1
    Dernier message: 21/12/2006, 11h17
  3. Réponses: 10
    Dernier message: 15/12/2006, 07h34
  4. Réponses: 7
    Dernier message: 23/06/2006, 14h52
  5. Copier les valeurs d'un formulaire dans une table
    Par Cyphen dans le forum Access
    Réponses: 4
    Dernier message: 19/06/2006, 10h45

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