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 :

Pourquoi "Erreur de compilation de l'expression"


Sujet :

Access

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 63
    Points : 31
    Points
    31
    Par défaut Pourquoi "Erreur de compilation de l'expression"
    Bonjour,

    J'ai un gros problème que je n'arrive pas à résoudre et à comprendre.

    J'ai réalisé une base Access avec des formulaires, requêtes, tables... Tout fonctionnait normalement jusqu'à vendredi dernier. En effet depuis ce jour, toutes les requêtes qui utilsent une expression (ex: cnum, left, cdate, ...) ne fonctionnent plus. Access me met cette erreurs :

    ERREUR DE COMPILATION DE L'EXPRESSION "Expression"

    Ce que je ne comprends pas c'est qu'avant tout marchait et du jour au lendemain plus rien... Je ne peux plus créer des expressions dans mes requêtes sans que Access me mette ce message d'erreurs.

    Note: ce problème ne se fait que dans cette base Access



    Merci de votre aide!

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Bonjour,

    Ouvre le VBE (VB éditeur) et Outils.références... il doit te manquer des réfs.

    Il y a généralement MANQUANT affiché.

    Cordialement,
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 63
    Points : 31
    Points
    31
    Par défaut
    J'ai bien regardé dans les références et il n'y a rien de manquant... Le truc qui me sidère c'est que les expressions dans mes requêtes n'ont plus fonctionnées du jour au lendemain...

  4. #4
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Il faut que tu ais ceci de coché :

    Visual basic for applications
    Microsoft Access 10.0 Object Library (suivant ta version le 10.0 change)
    Microsoft Visual Basic For applications Extensions
    eventuellement
    Microsoft DAO 3.06 Object Library

    Le left et compagnie c'est le 1er ou le 2ème.
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 63
    Points : 31
    Points
    31
    Par défaut
    J'ai l'impression que le problème vient de fait que j'ai un code vba assez conséquent quand la création de mes formulaire.

    Car dans une version antérieur à ma base Access (Donc avec moins de code VB) tout foctionne. Quand j'ai actualisé ma version antérieur par les nouveaux code vb, les requêtes, comme dans ma derniere version ne fonctionnent plus...

  6. #6
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    As-tu vérifié les références que je t'ai indiqué.

    As-tu fais une compilation ? une réparation/compactage ?
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 63
    Points : 31
    Points
    31
    Par défaut
    Merci loufab pour tes informations mais j'avais dejà tous bien coché.

    Comme je l'ai dis au dessus avant tout marché... Mais je pense que c'est parce que j'ai trop de code vb... Enfin peut être... Et je sais pas si il y a une solution, ou bien que je dois reduire mon code

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 63
    Points : 31
    Points
    31
    Par défaut
    c'est quoi une réparation/compactage?

    J'ai bien dans outils : compacter une base de données...

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 63
    Points : 31
    Points
    31
    Par défaut
    J'ai compacté ma base, cela a reduit sa taille mais pas résolu le problème

  10. #10
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Essaye la décompilation. Pour cela regarde mon tuto sur les options de démarrage.

    Quand tu fais une compilation, t'affiche-t-il un message ?
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  11. #11
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 63
    Points : 31
    Points
    31
    Par défaut
    Je vais essayé une décompilation via ton tuto.

    Quand tu me dis :"quand tu fais une compilation" je sais qu'access le fait automatiquement quand j'execute une requête, il m'affiche des messages quand il y a une erreurs dans unes de mes expressions.

    Ici en l'occurance il me met par exemple:

    ERREUR DE COMPILATION DANS L'EXPRESSION cnum([left([JOBNO];9)):

  12. #12
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    cnum([left([JOBNO];9))

    Il y a une erreur dans cette synntaxe. Le crochet en gras est en trop.
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  13. #13
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 63
    Points : 31
    Points
    31
    Par défaut
    Oui excuse j'ai mal recopié, mais tout ce que je sais c'est que ca ne vient pas d'une erreurs de code!

  14. #14
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 006
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 006
    Points : 24 598
    Points
    24 598
    Par défaut
    Citation Envoyé par Sofie109
    Quand tu me dis :"quand tu fais une compilation" je sais qu'access le fait automatiquement quand j'execute une requête, il m'affiche des messages quand il y a une erreurs dans unes de mes expressions.
    Non ACCESS ne compile pas automatiquement !

    Il faut le spécifier via le menu Outils de VBE (l'éditeur VBA). Pour savoir si l'application est compilée l'option est grisée dans le menu. La décompilation n'est pas disponible en standard, c'est pour cela qu'il faut passer par un raccourci.

    Je classerai donc VBA dans la famille des interpréteurs.

    Pour les requêtes il n'y a pas de compilation non plus. Celles-ci sont interprétée et elles sont optimisées via la technologie Rushmore.

    Maintenant il s'agit de préciser si le message apparait pour toutes les fonctions de bases (left right...) ou si ceux-ci n'apparaissent que dans les requêtes. Pour cela va dans la fenêtre de debogage de VBA et tape
    ? left("toto",2)
    si une erreur se produit c'est qu'il manque une référence.
    Détecter les modifications formulaire Cloud storage et ACCESS
    Classe MELA(CRUD) Opérateur IN et zone de liste Opérateur LIKE
    Visitez mon Blog
    Les questions techniques par MP ne sont pas lues et je ne pratique pas la bactériomancie

  15. #15
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    63
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 63
    Points : 31
    Points
    31
    Par défaut
    Ok! Mais la fenêtre debogage de vba se trouve ou?

    La fenêtre "débogage" existe dans le code VBA quand je veux taper du code pour la réalisation de mes formulaires, mais pour les requêtes je vois pas...

  16. #16
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    427
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 427
    Points : 520
    Points
    520
    Par défaut
    J'ai eu le même problème aujourd'hui.
    Les références étaient bien cochées, mais une fois que je les ai décochées, elles n'aparaissaient plus du tout !
    Je les ai récupérées en passant par le bouton parcourir de l'outil référence et en allant les chercher dans le dossier office (C:\Program Files\Microsoft Office\office x.x)

  17. #17
    Faw
    Faw est déconnecté
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2004
    Messages
    1 169
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 169
    Points : 1 383
    Points
    1 383
    Par défaut
    Voir éventuellement du côté du séparateur dans les expressions.
    left([JOBNO];9) est-ce bien le point-virgule qu'il faut?
    Je ne comprends rien à Access...Mais je me soigne.
    Moteur de recherche
    DAO

  18. #18
    Nouveau Candidat au Club
    Homme Profil pro
    Analyse système
    Inscrit en
    Septembre 2014
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : Canada

    Informations professionnelles :
    Activité : Analyse système

    Informations forums :
    Inscription : Septembre 2014
    Messages : 1
    Points : 1
    Points
    1
    Par défaut J'ai reçu la même erreur
    Dans mon cas, je lançais une requête qui contenait des fonctions tel que Vraifaux(), Estnull(), Gauche() etc. Comme j'avais laissé en plan une Sub qui contenait une erreur, au moment de lancer la requête, Access détectait cette erreur et empêchait d'interpréter les fonctions intégrés à ma requête. J'ai lancé le compilateur d'Accèss et j'ai découvert que l'erreur provenait d'un des modules mais pas de la requête comme Access me laissait croire.

  19. #19
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    Voir éventuellement du côté du séparateur dans les expressions.
    left([JOBNO];9) est-ce bien le point-virgule qu'il faut?
    Si l'expression est dans la requete, il faut mettre ";" si l'expression est dans du code, il faut mettre ","
    Jeannot

    Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., Sources VBA

    Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre

Discussions similaires

  1. Pourquoi Erreur de Compilation
    Par hentodev dans le forum C++
    Réponses: 1
    Dernier message: 10/05/2010, 16h19
  2. Réponses: 3
    Dernier message: 15/05/2009, 16h18
  3. Réponses: 4
    Dernier message: 17/11/2007, 10h10
  4. erreur de compilation Visual C++ 2005 Express
    Par DDMALO dans le forum Visual C++
    Réponses: 1
    Dernier message: 08/06/2007, 21h12

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