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

Macros Access Discussion :

Impossible d'utiliser la fonction "Si" avec l'éditeur de Macro 2010


Sujet :

Macros Access

  1. #1
    Candidat au Club
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Février 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Février 2013
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Impossible d'utiliser la fonction "Si" avec l'éditeur de Macro 2010
    Bonjour,

    Voilà, j'ai un pb avec Access 2010. J'ai créer une petite application avec quelques tables et requetes.

    Je souhaite "automatiser" certaines requetes en créant des macros. J'utilise l'éditeur de macro Access 2010 mais quand je je veux utiliser la macro de type "Si", access plante et me renvoie un message d'erreur du type :
    "Microsoft Access ne parvient pas à trouver le nom "xxxx" dans entré dans l'expression...."

    J'ai beau tout essayé, je n'arrive pas à faire marcher cette maudite fonction Si.

    Voici mon bout de macro :

    Si [Nom Table]![Nom Champ] = "Valeur 1"
    Alors Zone Message etc... "Message 1"
    Sinon Zone Message " Message 2"

    J'ai mis un screenshot dans la pièce jointe.


    Merci d'avance
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent
    Avatar de jimbolion
    Homme Profil pro
    Moulticien
    Inscrit en
    Janvier 2013
    Messages
    3 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Moulticien
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 3 150
    Points : 7 001
    Points
    7 001
    Billets dans le blog
    2
    Par défaut macro
    DG83,

    Outre le Fin si que je ne vois pas dans ton screenshot, je ne vois pas comment la macro peut déterminer la valeur de ton champ dans ta table si tu ne lui spécifie par un identifiant ?

    Voilà comment je procède et cela fonctionne très bien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SI RechDom("[Nom Champ]";"Nom Table";"ID=1")="Damien" Alors
    A bientôt

    JimboLion
    N'oubliez pas le Tag si la réponse donnée vous a été utile et pour une réponse pertinente.
    Retrouvez-moi sur le chat en salon base de données

  3. #3
    Candidat au Club
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Février 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Février 2013
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    JimboLion,

    Merci Beaucoup mais en fait, je n'utilise pas le "code VBA", je passe par l'éditeur de macro et donc le générateur d'expression.

    Dans ma clause "Si", il me demande de sélectionner la table et le nom du champ, mais rien de plus... ( voir la pièce jointe).

    Ou placer ID=1 dans le générateur d'expression ?

    Merci d'avance,

  4. #4
    Expert éminent
    Avatar de jimbolion
    Homme Profil pro
    Moulticien
    Inscrit en
    Janvier 2013
    Messages
    3 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Moulticien
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 3 150
    Points : 7 001
    Points
    7 001
    Billets dans le blog
    2
    Par défaut MAcro
    DG 63 bonsoir,

    Pour faire suite à ton post, et je viens de générer la même macro que toi, certes basée sur une autre table, me renvoie le même message. Ce message t'explique que si tu fais une recherche tu dois spécifier le type d'objet : exemple Forms![monForm]![MonChamp].

    En l'occurence, tu dois effectuer un contrôle de l'identifiant du type

    La question à se poser c'est
    Est ce que le nom du client dont le numéro est xxx s'appelle Damien :

    Il te faut donc isoler la table (Clients), le champ (=nom) et la ligne dans la table : si on ne teste pas la ligne il te renverra une action pour au moins un client de la table

    Si tu veux gérer ce cas là dans ta macro tu mets id>1 (id est un exemple)

    Regarde le screenshot :

    A bientôt

    JimboLion
    Images attachées Images attachées  
    N'oubliez pas le Tag si la réponse donnée vous a été utile et pour une réponse pertinente.
    Retrouvez-moi sur le chat en salon base de données

  5. #5
    Candidat au Club
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Février 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Février 2013
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Encore merci,

    Au risque de paraitre tres nul, a quoi correspond "domain" ?

  6. #6
    Expert éminent
    Avatar de jimbolion
    Homme Profil pro
    Moulticien
    Inscrit en
    Janvier 2013
    Messages
    3 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Moulticien
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2013
    Messages : 3 150
    Points : 7 001
    Points
    7 001
    Billets dans le blog
    2
    Par défaut Macro
    Domain c'est le nom de la table

    Regarde dans mon post précédent

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SI RechDom("[Nom Champ]";"Nom Table";"ID=1")="Damien" Alors
    Bonne soirée et bon courage

    Si tu n'y arrives pas post moi une copie de ta base
    Je mettrai à jour ta macro

    JimboLion
    N'oubliez pas le Tag si la réponse donnée vous a été utile et pour une réponse pertinente.
    Retrouvez-moi sur le chat en salon base de données

  7. #7
    Candidat au Club
    Homme Profil pro
    Consultant ERP
    Inscrit en
    Février 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Février 2013
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    JimboLion,

    Merci. Ca fonctionne parfaitement Maintenant.

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juin 2020
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2020
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Bonjour,

    J'ai également un soucis avec la fonction SI dans l'outil macro Access. Je voudrais pour mon formulaire d'ajout, que tous les champs soient renseignés sans exception. Mais je n'arrive pas à inclure tous ces champs, je bloque sur la syntaxe.

    Pour l'instant, je n'arrive qu'à le faire avec un seul champ :

    SI [Titre]<>"" alors

    Je voudrais inclure les autres champs, style :

    SI ([Titre];[date];[Genre])<>"" alors

    Pouvez-vous m'aider s'il vous plaît ? Merci d'avance.

  9. #9
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    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 648
    Points : 14 626
    Points
    14 626
    Par défaut
    bonsoir,
    la syntaxe est:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Si [Titre]<> "" Et [date]<>"" Et [Genre]<> "" Alors
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  10. #10
    Futur Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juin 2020
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2020
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Je crois avoir trouvé la solution :

    Si [Titre] Est Pas Null Et [Date] Est Pas Null etc.... Alors

  11. #11
    Futur Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Juin 2020
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Chargé d'affaire
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2020
    Messages : 16
    Points : 8
    Points
    8
    Par défaut
    Citation Envoyé par tee_grandbois Voir le message
    bonsoir,
    la syntaxe est:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Si [Titre]<> "" Et [date]<>"" Et [Genre]<> "" Alors
    J'avais testé cette syntaxe avec Ou mais ça ne fonctionnait pas.

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

Discussions similaires

  1. [XSL]Impossible d'utiliser les fonctions XPath 2.0
    Par cvmz dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 27/03/2006, 19h19
  2. DAO impossible d'utiliser une fonction dans un requete
    Par exter666 dans le forum VBA Access
    Réponses: 10
    Dernier message: 24/09/2005, 17h15
  3. impossible d'utiliser ma fonction dans un insert
    Par caramel dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 10/04/2003, 15h04

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