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 :

Trouver une valeur dans une table en VBA


Sujet :

VBA Access

  1. #1
    Candidat au Club
    Inscrit en
    Novembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 7
    Points : 3
    Points
    3
    Par défaut Trouver une valeur dans une table en VBA
    Bonjour,

    Nom de ma table : "Tbl_Nom"
    Champs : "Login";"Admin" (de type oui/non)

    Je voudrais mettre dans une variable si oui ou non l'utilisateur est admin.

    Le Login est l'identifiant de Windows que je récupérere via une fonction GetLoginUser() (dans mon module 1)

    voici mon programme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Param_DblClick(Cancel As Integer)
     
        Dim nomadmin As String
     
        nomadmin = DLookup("[Admin]", "Tbl_Nom", "[LOGIN] = " & GetLoginUser())
        MsgBox nomadmin
     
    End sub
    Lorsqu'il s'exécute, il me met une erreur "Opération annulée..."

    J'ai pourtant controlé le nom des champs (orthographe OK), table...
    J'ai essayé avec un type de variable boolean, NOK

    Pouvez vous m'aider ?

    Merci d'avance

    Ou une autre solution (je ne connais pas le SQL) ?

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour et bienvenue sur le forum Office de DVP.

    Deux choses :

    Déclares ta variable nomadmin de type variant, car s'il ne trouve rien, la fonction DLookup renvoie Null, ce qui ne passe pas avec une variable de type String.

    Login est du texte, donc il faut utiliser les simples quotes.

    Exemple avec du SQL :http://access.developpez.com/faq/ind...riteres#txtQry ou là : http://starec.developpez.com/tuto/fo...sdomaines/#LIV


    Philippe

  3. #3
    Candidat au Club
    Inscrit en
    Novembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Merci, effectivement, ça fonctionne depuis que j'ai ajouté
    "[LOGIN] = '" & GetLoginUser & "'"

    Mais je rencontre 2 autres problèmes

    1- Il me renvoie "-1" quand l'utilisateur est bien admin, est'ce normal ?

    2- Quand je ne suis pas admin, il me renvoie un message d'erreur "Utilisation incorrecte de Null"
    J'ai essayé d'y palier avec un if, mais ça na fonctionne pas...

    If nomadmin=Null then...
    Else Msgbox
    end if

  4. #4
    Candidat au Club
    Inscrit en
    Novembre 2008
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Désolé, j'ai trouvé tout seul !

    J'ai inversé le if !

    If nomadmin=-1 then ...
    Else Msgbox("Vous n'etes pas autorisé")
    end if

    Merci pour votre aide

  5. #5
    Invité
    Invité(e)
    Par défaut
    Re

    Citation Envoyé par Zoethibault Voir le message
    1- Il me renvoie "-1" quand l'utilisateur est bien admin, est'ce normal ?
    Est-ce que ton champ [Admin] est une valeur de type Booléen (Oui/Non), si c'est le cas, c'est normal.


    2- Quand je ne suis pas admin, il me renvoie un message d'erreur "Utilisation incorrecte de Null"
    J'ai essayé d'y palier avec un if, mais ça na fonctionne pas...
    Citation Envoyé par Philippe JOCHMANS Voir le message
    Déclares ta variable nomadmin de type variant, car s'il ne trouve rien, la fonction DLookup renvoie Null, ce qui ne passe pas avec une variable de type String.
    Philippe

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/04/2015, 11h17
  2. Réponses: 15
    Dernier message: 26/01/2015, 19h37
  3. trouver les valeurs d'une droite dans une matrice
    Par Liloucha dans le forum MATLAB
    Réponses: 1
    Dernier message: 11/05/2014, 17h24
  4. Réponses: 8
    Dernier message: 28/11/2011, 11h40
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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