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 :

Fonction 'Environ' non définie dans l'expression


Sujet :

VBA Access

  1. #1
    Membre régulier Avatar de lerico
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 115
    Points : 90
    Points
    90
    Par défaut Fonction 'Environ' non définie dans l'expression
    Salut,

    J'ai un problème par rapport à la fonction 'Environ'.
    Cette fonction fonctionne parfaitement dans mes modules, toutes les références sont correctes.
    Par contre, impossible de la faire fonctionner dans les requêtes access, j'ai systématiquement le message "Fonction 'Environ' non définie dans l'expression".
    J'ai réinstaller Access XP sans résultat.

    Avez-vous déjà eu ce problème.

    Merci,
    Lerico

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    503
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 503
    Points : 503
    Points
    503
    Par défaut
    Salut,

    "Environ" est une fonction Vba et non Sql me semble-t'il...

    Si tu veux avoir la valeur d'Environ, tu devras passer par un formulaire et y faire référence dans ta requete SQL, ou écrire la requete dans le code...

    6ril
    6ril25



    "Par trois méthodes nous pouvons apprendre la sagesse : d'abord, par la réflexion qui est la plus noble; en second lieu, par l'imitation, qui est la plus facile; et troisième, par l'expérience, qui est la plus amère." Confucius

  3. #3
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Essayes de mettre cette fonction dans une autre fonction, et d'utiliser cette dernière dans ta requête.

    Starec

  4. #4
    Membre régulier Avatar de lerico
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 115
    Points : 90
    Points
    90
    Par défaut
    Merci pour vos réponses.

    J'ai effectivement construit une autre requête simple avec la fonction environ et j'ai le même problème.

    Pourtant cette fonction existe bien dans le référentiel d'Access.

    Je sèche.
    Je viens de regarder sur le site de Microsoft, rien de plus.
    Sur d'autres postes que j'ai, je n'ai aucun souci.
    Mais mon poste principal ne veux plus reconnaitre la fonction.

    Je pourrais convertir mes requêtes en vba mais c'est quand même bizarre.

    Est-ce que cela peut être lié à la langue gérée dans Office ?

    Merci pour votre aide.

  5. #5
    Membre régulier Avatar de lerico
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 115
    Points : 90
    Points
    90
    Par défaut
    Je viens de créer dans un module la petit fonction ci-dessous :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Function test()
    Dim usernom As Variant
    usernom = Environ("username")
    End Function
    Bah, ça marche trés bien.
    Impossible de l'avoir sous les requêtes Access. Marche pas sur mon poste ???

    J'ai du déinstaller quelque chose.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    503
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 503
    Points : 503
    Points
    503
    Par défaut
    Montre nous ta requete pour voir...
    6ril25



    "Par trois méthodes nous pouvons apprendre la sagesse : d'abord, par la réflexion qui est la plus noble; en second lieu, par l'imitation, qui est la plus facile; et troisième, par l'expérience, qui est la plus amère." Confucius

  7. #7
    Membre régulier Avatar de lerico
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 115
    Points : 90
    Points
    90
    Par défaut
    Pour information, j'ai réussi à contourner le problème avec cette fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Function Environ(VarName)
        Dim wss, env
        Set wss = CreateObject("WScript.Shell")
        Set env = wss.environment("process")
        Environ = env(VarName)
        If Environ = "" Then
            Set env = wss.environment("system")
            Environ = env(VarName)
        End If
    End Function
    Si je ne met pas cette fonction, toutes les requêtes avec un filtre environ("username") ne fonctionnent pas.

    Ceci corrige mon problème mais je n'arrive toujours pas à comprendre ce qui a pu désactiver cette fonction.

    Merci à tous,

    Lerico

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 5
    Points : 7
    Points
    7
    Par défaut
    Bonjour

    j'ai le même problème que vous avec environ('username').

    J'ai fait une application qui sera ouverte soit en Access 2003 ou en Web Access.
    Cette application ouvre un formulaire en fonction de l'utilisateur que je récupère par un filtre environ('username').

    Cela fonctionne sur certains postes et pas sur d'autres.
    Le message est fonction "environ" non définie ...

    Question : A quel endroit je dois mettre cette fonction et comment l'utiliser ?

    Merci

  9. #9
    Membre habitué
    Avatar de martinbrait
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 74
    Points : 131
    Points
    131
    Par défaut
    Citation Envoyé par lerico Voir le message
    Je viens de créer dans un module la petit fonction ci-dessous :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Function test()
    Dim usernom As Variant
    usernom = Environ("username")
    End Function
    Bah, ça marche trés bien.
    Impossible de l'avoir sous les requêtes Access. Marche pas sur mon poste ???

    J'ai du déinstaller quelque chose.
    Erreur dans la fonction !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Function EnvironUsername()
    EnvironUsername =  Environ("username")
    End Function

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Fonction 'convert' non définie dans l'expression.
    Par Khalou8 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 31/12/2009, 17h54
  2. Fonction 'convert' non définie dans l'expression.
    Par Khalou8 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 31/12/2009, 16h02
  3. [AC-2000] Fonction Mid non définie dans l'expression
    Par tibogaet dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 13/08/2009, 11h25
  4. Fonction substring non définie dans l'expression
    Par 810mcu dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 23/05/2008, 17h05
  5. Réponses: 2
    Dernier message: 01/06/2006, 14h54

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