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 :

Une formule : BASIC VB SVP [AC-2016]


Sujet :

Access

  1. #1
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 77
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juillet 2017
    Messages : 240
    Points : 115
    Points
    115
    Par défaut Une formule : BASIC VB SVP
    Bonjour Amis ASTICIENS,

    Je n'arrive pas à faire fonctionner cette formulation (Je sais, Suis Null en VB Basic...)

    Voilà ma création
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =CpteDom("[INDEX]", me.recordsource, "[SousTYPE] ='Décédé'")
    MSoft me dit : Expression non valide .


    Mon but est d'afficher dans le PIED de GROUPE les personnes qui sont marquées [Décédé] dans un champ nommé [SouType]

    Une idée, une piste ou un exemple me ferait plaisir....

    Bon week end.
    Bernard éternel débutant sous ACCESS 2016 avec Win 10

  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 817
    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 817
    Points : 14 911
    Points
    14 911
    Par défaut
    bonjour,
    on ne peux pas utiliser Me.Recordsource dans une fonction de domaine, seules les requêtes nommées et les tables sont autorisées

  3. #3
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 817
    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 817
    Points : 14 911
    Points
    14 911
    Par défaut
    tu peux ajouter un champ calculé dans ta requête:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Vraifaux([SousTYPE] ="Décédé";1;0)
    et en faire la somme dans le pied de groupe

  4. #4
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 77
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juillet 2017
    Messages : 240
    Points : 115
    Points
    115
    Par défaut Merci Tee_Grandbois
    Merci Tee_Grandbois,

    Mais là j'ai vraiment eu peur :
    Dans mon listing FAMILLE, il apparait 37 décés sur 37 personnes !!! hihihi

    Plus concrétement je n'ai pas pu faire fonctionner ma requête avec ce que tu m'as dit...

    Ma formule dans l'état =Compte("[SousTYPE] = 'Décédé'") & " décès"
    avec les 2 captures requête et Etat pour que tu comprennesNom : ACaptureDécés.JPG
Affichages : 196
Taille : 154,6 KoNom : ACaptureRQ.JPG
Affichages : 195
Taille : 110,0 Ko mieux ce que j'explique mal...

    Grand merci pour ton aide.
    Bernard

  5. #5
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 817
    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 817
    Points : 14 911
    Points
    14 911
    Par défaut
    il faut utiliser le champ Expr1 pour le comptage (mais avant, il faut lui donner un nom plus parlant) mais ce n'est pas compte qu'il faut utiliser mais Somme

  6. #6
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 817
    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 817
    Points : 14 911
    Points
    14 911
    Par défaut
    je m'aperçois que ta source est une requête nommée ... du coup, ma première réflexion donne la solution:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    = CpteDom("[INDEX]", "[Rq Impression Types]", "[SousTYPE] ='Décédé' and Age = " & Age)  & " décès"
    [EDIT:] il faut tenir compte du groupe Age, je n'ai pas mis d'apostrophes mais si Age est de type texte, il faudra en ajouter

  7. #7
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 77
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juillet 2017
    Messages : 240
    Points : 115
    Points
    115
    Par défaut Merci Tee_grandbois
    Merci de ton aide, hélas cela ne foncti6onne pas...
    J'ai rajouté comme tu me l'as dit les apostrophes de Age car TEXTE

    Voilà la petite modif effectuée... Suis vraiment Null mais bon en Copier/Coller.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    = CpteDom("[INDEX]", "[Rq Impression Types]", "[SousTYPE] ='Décédé' and 'Age' = " & 'Age')  & " décès"
    Si tu vois quelques erreurs dans mes rectiF....?

    Merci et passe un bon dimanche (Ici il pleut et neige sur Annecy 74).
    Bernard

  8. #8
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 817
    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 817
    Points : 14 911
    Points
    14 911
    Par défaut
    bonjour,
    les apostrophes c'est pour entourer la variable mai ce n'est pas à prendre au pied de la lettre, il faut quand même qu'elle reste une variable...
    ceci est un littéral: ceci est une variable entouré d'apostrophes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    = CpteDom("[INDEX]"; "[Rq Impression Types]"; "[SousTYPE] ='Décédé' and Age = '" & Age & "'") & " décès"

  9. #9
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 77
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juillet 2017
    Messages : 240
    Points : 115
    Points
    115
    Par défaut Merci tee_granbois, pour ton aide...
    Merci tee_granbois, pour ton aide Amicale et tes explications qui me font progrésser...

    Héla, trois fois hélas l'état m'annonce Zéero décés alors qu'il devrais en trouver 13

    J'ai bien retranscris (Copier/Coller) mais cela ne fonctionne pas ...

    Excuse moi de te déranger encore et encore.

    Bonne soirée.
    Bernard

  10. #10
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 817
    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 817
    Points : 14 911
    Points
    14 911
    Par défaut
    que contient le champ Age pour un exemple ?

    Vérifie que dans la propriété Nom du contrôle qui a pour Source contrôle le champ, il y a également Age

  11. #11
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 77
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juillet 2017
    Messages : 240
    Points : 115
    Points
    115
    Par défaut Tee_granbois Merciiiiiiiiiii
    Le champ age est un champ calculé, car inutile de mémoriser dans la Table le nombre d'années

    Et voilà ma formulation pour Age :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =VraiFaux([DateNaissance] Est Null;"";VraiFaux(Nz(![SousTYPE])="Décédé";"Décédé";Int((Maintenant()-[DateNaissance])/365.25) & " ans"))
    Quand les personnes sont mortes, le champ devient tout noir avec Décédé.

    Bernard
    Bonne soirée et grand merci

  12. #12
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 817
    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 817
    Points : 14 911
    Points
    14 911
    Par défaut
    Le champ age est un champ calculé, car inutile de mémoriser dans la Table le nombre d'années
    et cette formule est un champ de regroupement de l'état qui n'est pas dans la requête? vraiment bizarre comme façon de faire ...
    et je parlais de contenu en tant que données pas de formule ...

  13. #13
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 77
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juillet 2017
    Messages : 240
    Points : 115
    Points
    115
    Par défaut tee_grandbois merciiiiiiiiiiiii
    Contenu Vide le Champ de la table est VIDE...

    C'est peut-être une raison de cette mauvaise fonctionnalité ???

    Mais je fais souvent du Copier/Coller et ne comprend pas toujours le pourquoi du comment !

  14. #14
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 817
    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 817
    Points : 14 911
    Points
    14 911
    Par défaut
    on tourne en rond et tes réponses sont de plus en plus nébuleuses... il faudrait poster la base mais malheureusement je n'ai pas Access sur ce PC, je vais devoir passer la main sur ce coup

  15. #15
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 77
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juillet 2017
    Messages : 240
    Points : 115
    Points
    115
    Par défaut Tee_Grandbois, merci pour ta patience et ton aide....
    Bonjour Tee_Grandbois, merci pour ta patience et ton aide....

    Et oui je ne puis pas tout expliquer clairement, car j'ai commencé cette base en 1990, puis rajouté au fur et à mesure des fonctionnalités.

    Certaines par des Copier/Coller prises sur ce Forum, d'autres avec l'aide d'un Ami plus calé que moi.
    J'ai 74 ans et me suis appris tout seul l'informatique grâce à des personnes douée comme Toi.
    Débuté sur Vic 20, puis Commodore 64 puis un PC AST avec Windows 3.1.

    Mais je te remercie beaucoup, de part tes réflexions sur la prog.,j'en ais retiré de bons renseignements...
    Ex, tu dis : on ne peux pas utiliser Me.Recordsource dans une fonction de domaine, seules les requêtes nommées et les tables sont autorisées...
    Cela je ne le savais pas...

    En teremerciant, je te dis bonne journée et à+
    Bernard

  16. #16
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 817
    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 817
    Points : 14 911
    Points
    14 911
    Par défaut
    bonjour,
    pour en revenir à ton problème, peux-tu me confirmer que Age est bien dans la requête ? ce qui serait logique puisque utilisé en tant que groupe dans l'état.
    si ce n'est pas le cas, il faudrait le faire

  17. #17
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 77
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juillet 2017
    Messages : 240
    Points : 115
    Points
    115
    Par défaut Re-Bonjour Tee_Granbois
    Citation Envoyé par tee_grandbois Voir le message
    bonjour,
    pour en revenir à ton problème, peux-tu me confirmer que Age est bien dans la requête ? ce qui serait logique puisque utilisé en tant que groupe dans l'état.
    si ce n'est pas le cas, il faudrait le faire

    Oui c'est SUR dans la Rq voir ci-joint et vide ...
    Bonne soirée
    Bernard
    Images attachées Images attachées  

  18. #18
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 817
    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 817
    Points : 14 911
    Points
    14 911
    Par défaut
    est-ce que Bd Adresses est une requête ou une table ?
    Si c'est une table, il faut éviter d'utiliser le nom d'un champ d'une table (Age) dans un autre objet (l'état) pour en faire un champ calculé.
    Si c'est une requête, c'est dedans qu'il faut mettre les champs calculés.
    Une requête c'est fait pour ça, il faut éviter de mettre des calculs dans les états ou formulaires quand c'est possible.

  19. #19
    Membre régulier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2017
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 77
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juillet 2017
    Messages : 240
    Points : 115
    Points
    115
    Par défaut Tee_Grandbois
    Tee_Grandbois voilà tout ce que je puis dire :

    Le champ [Age] qui est vide est bien dans la table : Bd Adresses qui est une TABLE
    Le champs [Age] a été aussi mis dans l'état (ce qui n'est peut-être pas necessaire ?).

    Voilà c'est tout ce que je puis dire.
    Amicalement Merciiiiiiiiiii
    Bernard

    Nom : ACaptureRQ.JPG
Affichages : 163
Taille : 110,0 Ko

  20. #20
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 817
    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 817
    Points : 14 911
    Points
    14 911
    Par défaut
    Le champ [Age] qui est vide est bien dans la table : Bd Adresses qui est une TABLE
    Le champs [Age] a été aussi mis dans l'état (ce qui n'est peut-être pas necessaire ?).
    ce qui explique pourquoi la formule avec CpteDom ne fonctionne pas et également les entête et pied de groupe sur Age.
    Relis mon poste précédent, ajoute le calcul de l'age dans la requête et appelle le champ CalcAge et utilise-le pour la formule et l'entête et le pied de groupe.
    Cela DOIT fonctionner

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. écrire une formule dans une cellule excel en visual basic
    Par dylan.blasi dans le forum VB.NET
    Réponses: 2
    Dernier message: 04/06/2020, 13h06
  2. centrer une formule SVP en MikTex 2.8 sous TXC
    Par mgoumine dans le forum Mise en forme
    Réponses: 3
    Dernier message: 20/09/2011, 16h28
  3. Réponses: 0
    Dernier message: 25/06/2008, 09h53
  4. Mauvais résultat aprés une formule de calcul complexe
    Par poufouille dans le forum Bases de données
    Réponses: 3
    Dernier message: 10/12/2004, 00h12
  5. problème de guillemets dans une formule shell
    Par dim_italia dans le forum VBA Access
    Réponses: 7
    Dernier message: 18/08/2003, 12h46

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