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

Requêtes et SQL. Discussion :

Fonction Mid non définie dans l'expression


Sujet :

Requêtes et SQL.

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 177
    Points : 76
    Points
    76
    Par défaut Fonction Mid non définie dans l'expression
    Bonjour
    Notre entreprise vient de migrer vers Windows 10 avec Office 365
    Je suis sous la version 2007 - 2016 d'après : Option / Générales / Format par défaut : 2000, 2002-2003 et 2007 - 2016
    J'ai toujours travaillé avec des versions .mdb depuis 15 ans.
    J'ai vérifié dans VB, il n'y a aucune référence manquante. Les librairies Access, DAO, ActiveX et Excel sont cochées
    J'ai enregistré mes bases en Access 2000, mai j'ai toujours le message : Fonction Mid (ou left) non définie
    Je ne peux pas avancer car j'ai une trentaine de fichiers .mdb et ils sont tous bloqués ...
    Merci de votre aide

  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 797
    Points : 14 863
    Points
    14 863
    Par défaut
    bonjour,
    quand tu compiles le code VBA, y a t-il message d'erreur ?
    si oui, peux-tu imprimer le message et la ligne en erreur ?
    peux-tu aussi imprimer tes références cochées ?

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 177
    Points : 76
    Points
    76
    Par défaut
    Je ne compile pas de code VBA, je fait tout en mode graphique
    la bouton de commande48 génère l'état "TableauGeneralDS1"; mais quand je clique dessus il ne se passe rien ; mais j'arrive à ouvrir l'état en cliquant dessus.
    Pour les références j'ai ouvert une autre base
    PJ : 4
    Images attachées Images attachées     

  4. #4
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 797
    Points : 14 863
    Points
    14 863
    Par défaut
    je ne compile pas de code VBA, je fait tout en mode graphique
    ce n'est pas une option, cela devrait être systématique particulièrement quand on change de version, la compile vérifie la syntaxe, et détecte les problèmes de référence, entre autres

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 177
    Points : 76
    Points
    76
    Par défaut
    Citation Envoyé par tee_grandbois Voir le message
    ce n'est pas une option, cela devrait être systématique particulièrement quand on change de version, la compile vérifie la syntaxe, et détecte les problèmes de référence, entre autres
    Je ne me rappelle plus comment il faut compiler, j'avais fait un peu de VB6 il y a plus de 15 ans.
    Lorsque je vais dans VBA et que je clique sur Exécution , il me demande le nom de la macro ... mais je n'en ai pas ...

    Modification du message : entre temps j'ai trouvé une solution provisoire pour régler le problème des fonctions mid ou left... créer une base vide .accdb et importer les objets ; c'est rapide pour une base , mais j'en ai une quarantaine ...

  6. #6
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 797
    Points : 14 863
    Points
    14 863
    Par défaut
    pour compiler, c'est ce bouton du menu:

    Nom : _0.JPG
Affichages : 926
Taille : 51,9 Ko

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 177
    Points : 76
    Points
    76
    Par défaut
    Bonjour
    Il ne se passe rien en compilant (débogage)
    Avant la migration , j'avais transféré le fichier .mdb sur lequel je travaillais sur mon ordinateur personnel ; le problème du Mid avait été résolu en décochant la référence manquante et tous fonctionne toujours bien sur mon ordi personnel avec cette base .mdb
    ça a l'air de marcher en recréant les boutons de commande sur le formulaire de la base .accdb sur l'ordinateur professionnel ... sauf qu'il y a une dizaine de base avec une dizaine de boutons ...

  8. #8
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 797
    Points : 14 863
    Points
    14 863
    Par défaut
    bonjour,
    Avant la migration , j'avais transféré le fichier .mdb sur lequel je travaillais sur mon ordinateur personnel ; le problème du Mid avait été résolu en décochant la référence manquante et tous fonctionne toujours bien sur mon ordi personnel avec cette base .mdb
    je croyais qu'il n'y avait pas de problème de référence manquante ? (voir ton premier post) si c'est la référence de la version Access (16.0) , il faut mettre à jour les références pour toutes les bases et compiler pour vérification.
    Sinon, il y a la possibilité de le faire par VBA (rechercher sur le net avec: references.addfromfile), mais je pense que ce serait plus rapide de refaire les 10 références à la main: décocher les "manquantes" et cocher la nouvelle version (exemple: Microsoft Access 16.0 Object Library à la place de l'ancienne)

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 177
    Points : 76
    Points
    76
    Par défaut
    Citation Envoyé par tee_grandbois Voir le message
    bonjour,
    je croyais qu'il n'y avait pas de problème de référence manquante ? (voir ton premier post) si c'est la référence de la version Access (16.0) , il faut mettre à jour les références pour toutes les bases et compiler pour vérification.
    Sinon, il y a la possibilité de le faire par VBA (rechercher sur le net avec: references.addfromfile), mais je pense que ce serait plus rapide de refaire les 10 références à la main: décocher les "manquantes" et cocher la nouvelle version (exemple: Microsoft Access 16.0 Object Library à la place de l'ancienne)
    Je n'avais pas parlé de mon ordi personnel dans mon premier post.
    Il n'y a pas de références manquantes cochées dans mon ordinateur professionnel.
    Microsoft Access 16.0 Object Library est coché comme le montre la PJ.

  10. #10
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 797
    Points : 14 863
    Points
    14 863
    Par défaut
    bonsoir,
    dans ce cas, tu as donné une partie de la solution ici:
    j'ai trouvé une solution provisoire pour régler le problème des fonctions mid ou left... créer une base vide .accdb et importer les objets ; c'est rapide pour une base , mais j'en ai une quarantaine ...
    As-tu essayé d'enregistrer directement au format .accdb ?
    ouvrir la base, cliquer sur l'onglet "Fichier", puis "Enregistrer sous" et sélectionner "Base de données Access (*.accdb"), c'est plus rapide que d'importer tous les objets dans une base vide ...

  11. #11
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 177
    Points : 76
    Points
    76
    Par défaut
    Citation Envoyé par tee_grandbois Voir le message
    bonsoir,
    dans ce cas, tu as donné une partie de la solution ici: As-tu essayé d'enregistrer directement au format .accdb ?
    ouvrir la base, cliquer sur l'onglet "Fichier", puis "Enregistrer sous" et sélectionner "Base de données Access (*.accdb"), c'est plus rapide que d'importer tous les objets dans une base vide ...
    Merci, je n'avais pas pensé à cette solution ...
    Reste le problème des boutons de commande qui génèrent les états : quand je clique sur le bouton de commande il ne se passe rien ; mais j'arrive à ouvrir l'état en cliquant dessus. (voir PJ).
    ça marche en recréant les boutons de commande sur le formulaire de la base ... sauf qu'il y a une dizaine de base avec une dizaine de boutons ...

  12. #12
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 797
    Points : 14 863
    Points
    14 863
    Par défaut
    je crois avoir déjà rencontré ce souci dans un post il y a quelques temps déjà...: dans la commande, essaie de remplacer acPreview par acViewPreview

  13. #13
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 177
    Points : 76
    Points
    76
    Par défaut
    ça ne donne rien ...

  14. #14
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 797
    Points : 14 863
    Points
    14 863
    Par défaut
    Citation Envoyé par eric232 Voir le message
    ça ne donne rien ...
    acViewPreview est sensé ouvrir l'état en aperçu avant impression, si il ne se passe rien, ce n'est pas normal. Il faudrait vérifier que les macros et le code VBA peuvent être lancés. Dans la fenêtre base de données, il faut cliquer sur le bouton "Activer le contenu":

    Nom : Acc_Avertissement_Sécurité.JPG
Affichages : 1328
Taille : 18,0 Ko

  15. #15
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 177
    Points : 76
    Points
    76
    Par défaut
    Citation Envoyé par tee_grandbois Voir le message
    acViewPreview est sensé ouvrir l'état en aperçu avant impression, si il ne se passe rien, ce n'est pas normal. Il faudrait vérifier que les macros et le code VBA peuvent être lancés. Dans la fenêtre base de données, il faut cliquer sur le bouton "Activer le contenu":

    Nom : Acc_Avertissement_Sécurité.JPG
Affichages : 1328
Taille : 18,0 Ko
    Je n'ai nulle part de bouton "Activer le contenu"

  16. #16
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 797
    Points : 14 863
    Points
    14 863
    Par défaut
    désolé, mais là, je sèche ...

  17. #17
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 028
    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 028
    Points : 24 581
    Points
    24 581
    Par défaut
    Bonjour,

    Quand le clic sur les boutons est inopérant, comme tout le reste du code lié à l'interface (formulaire/état) c'est généralement un problème de link entre le l'ihm et le code vba.

    Pour y remédier il te faire faire un decomp/comp (decompilation/compilation) pour ce faire tu peux consulter mon billet ici : http://blogaccess.free.fr/?p=75

    Mais il vaut mieux dans un premier temps convertir tes fichiers de mdb (ancien format <2007) en accdb (nouveau format >=2007), pour cela il te faut ouvrir chaque fichier et faire enregistrer sous.

    Nom : 2020-09-23_07h36_23.png
Affichages : 875
Taille : 52,0 Ko

    Cordialement,

  18. #18
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 177
    Points : 76
    Points
    76
    Par défaut
    Bonjour
    Oui, j'ai enregistré les base .mcb en accdb
    Je ne me rappelle plus comment utiliser les commandes dos. Tout ce que j'ai réussi à faire c'est ouvrir l'invite de commande DOS où je vois C:\users\MonNom>

  19. #19
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 028
    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 028
    Points : 24 581
    Points
    24 581
    Par défaut
    Tu as lu le billet ?

    Parce que tu n'as pas besoin d'ouvrir une session dos.

  20. #20
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    177
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 177
    Points : 76
    Points
    76
    Par défaut
    Citation Envoyé par loufab Voir le message
    Tu as lu le billet ?

    Parce que tu n'as pas besoin d'ouvrir une session dos.
    Oui, j'ai lu...
    Faites-glisser la copie de votre application sur le batch...
    Je suppose que l'application c'est la copie de la base endommagée
    Je glisse le fichier Acces (copie de la base endommagée) sur quel batch ? il est où ?

Discussions similaires

  1. Fonction 'Environ' non définie dans l'expression
    Par lerico dans le forum VBA Access
    Réponses: 8
    Dernier message: 01/03/2016, 17h40
  2. 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
  3. 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
  4. [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
  5. 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

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