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 :

VBA et requête [AC-2013]


Sujet :

VBA Access

  1. #1
    Membre régulier Avatar de jajoju
    Homme Profil pro
    Semi retraité
    Inscrit en
    Novembre 2016
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Semi retraité

    Informations forums :
    Inscription : Novembre 2016
    Messages : 169
    Points : 98
    Points
    98
    Par défaut VBA et requête
    Bonjour

    J'ai un Objet Zone de liste appelée "Liste0" . Dans la feuille de propriété , il y a ce contenu tiré d' une requête AAA

    SELECT [Requête AAA].N°, [Requête AAA].Date, [Requête AAA].Nom FROM [Requête AAA] WHERE ((([Requête AAA].NOM)="NOM_TEMP"))
    ORDER BY [Requête AAA].Date;

    J'aimerais insérer ce contenu dans mon formulaire sous forme VBA dans une procédure événementielle.

    Comment transformer ce contenu en language VBA dans mon formulaire ???

    Merci

    Jacques

  2. #2
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    Bonjour,

    Le plus simple :

    - enregistre cette requête, dans mon exemple « LaRequete ».

    - Si ta zone de liste s'appelle « LaZoneDeListe », voici le code à associer au bouton qui déclenche l'affectation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Option Compare Database
    Option Explicit
     
    Private Sub LeBouton_Click()
      Me.LaZoneDeListe.RowSource = "LaRequete"
    End Sub
    Remarque le doublement des quotes à l'intérieur du SQL lui-même encadré de quotes.

    P.-S. Évite les caractères spéciaux et les espaces dans les noms d'objets et de contrôles. Idem pour les mots aussi utilisés par Access : Date par exemple)

    Sans enregistrer la requête, tu pourrais écrire ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Option Compare Database
    Option Explicit
     
    Private Sub LeBouton_Click()
      Docmd.RunSql "SELECT [Requête AAA].N°, [Requête AAA].Date, [Requête AAA].Nom FROM [Requête AAA] WHERE ((([Requête AA].NOM)=""NOM_TEMP"")) ORDER BY [Requête AAA].Date;" 
    End Sub
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  3. #3
    Membre régulier Avatar de jajoju
    Homme Profil pro
    Semi retraité
    Inscrit en
    Novembre 2016
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Semi retraité

    Informations forums :
    Inscription : Novembre 2016
    Messages : 169
    Points : 98
    Points
    98
    Par défaut [AC-2013] VBA et requête
    Merci de me répondre.

    LeBouton_Click() ? Est-ce un bouton de commande que j' ajoute à mon formulaire ?

    Dois-je l voir ce bouton sur mon formulaire ( ou le rendre invisible ? ) ou est-ce une variable quelconque ?

    Que veut dire Option Explicit dans la procédure ?

    Merci encore ....

    Jacques

  4. #4
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    Que veut dire Option Explicit dans la procédure ?


    D'une manière générale, pour se documenter sur les propriétés d'un formulaire ou d'un état, ou de leurs contrôles :
    - afficher l'objet en mode construction ;
    - cliquer sur la propriété => elle se met en surbrillance ;
    - enfoncer la touche <F1>
    => l'aide Access s'ouvre à la bonne page.
    De même dans le code, placer le curseur de la souris et enfoncer F1.
    On peut aussi :
    • ouvrir l'aide <F1>, choisir l'onglet « Aide intuitive » et suivre les instructions ;
    • ouvrir la fenêtre d'exécution (<Ctrl> + G), saisir un mot-clé, y placer le curseur de la souris et enfoncer F1.

    J'aimerais insérer ce contenu dans mon formulaire sous forme VBA dans une procédure événementielle.
    Le bouton, c'est un exemple pour déclencher le code.

    De quelle procédure événementielle parles-tu ?
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  5. #5
    Membre régulier Avatar de jajoju
    Homme Profil pro
    Semi retraité
    Inscrit en
    Novembre 2016
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Semi retraité

    Informations forums :
    Inscription : Novembre 2016
    Messages : 169
    Points : 98
    Points
    98
    Par défaut VBA et requête
    Nom : 22.jpg
Affichages : 317
Taille : 138,1 Ko

    Bonjour

    Ci-haut l'image de mon formulaire
    Il y a une liste de 50 villes en ordre alphabétique dans ma zone de liste.
    J'aimerais filtrer une seule ville à partir de ma zone de liste déroulante qui s'appelle Modifiable24...
    je veux faire un Modifiable24_After_Update et trier seulement la ville choisie ... C'est ce que je veux faire en VBA
    Merci
    Jacques

  6. #6
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    Modifiable24_After_Update
    Prends l'habitude de donner des noms explicites à tes contrôles.

    Choisis plutôt un formulaire avec recherche multicritère pour ce genre d'outil.

    Regarde ici : http://claudeleloup.developpez.com/t...-multicritere/
    pour un exemple concret et des adresses pour d'autres méthodes d'approche.
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  7. #7
    Membre régulier Avatar de jajoju
    Homme Profil pro
    Semi retraité
    Inscrit en
    Novembre 2016
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Semi retraité

    Informations forums :
    Inscription : Novembre 2016
    Messages : 169
    Points : 98
    Points
    98
    Par défaut VBA et requête
    Bonjour,

    Je pensais qu'en ajoutant que quelques lignes VBA à Modifiable24_AfterUpdate() le filtre aurait eu lieu sans problème.

    J'aurais pu donner un nom plus explicite à mon contrôle ( Nom_Ville au lieu de Modifiable24 ) comme je fais d'habitude ...

    mais je voulais répondre vite à la discussion ... et j'ai omis de changer le nom.

    Merci

    Jacques

  8. #8
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    Bonjour,

    Voici un exemple de méthode :


    1° Sur le formulaire une zone de liste modifiable appelée « cboDenomination » qui liste les items possibles.
    2° Créer une requête qui liste les éléments en fonction du contenu (Null ou non) de cette zone de liste modifiable :


    3° Affecter cette requête à la propriété « Contenu » de la zone de liste (LaZoneDeListe).
    4° « Réveiller » LaZoneDeListe chaque fois que cboDenomination est modifiée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Option Compare Database
    Option Explicit
     
    Private Sub cboDenomination_AfterUpdate()
      Me.LaZoneDeListe.RowSource = Me.LaZoneDeListe.RowSource
    End Sub
    En bonus : un double-clic sur cboDenomination provoque sa remise à Null.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub cboDenomination_DblClick(Cancel As Integer)
      Me.cboDenomination = Null
      Me.LaZoneDeListe.RowSource = Me.LaZoneDeListe.RowSource
    End Sub
    Fichiers attachés Fichiers attachés
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  9. #9
    Membre régulier Avatar de jajoju
    Homme Profil pro
    Semi retraité
    Inscrit en
    Novembre 2016
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Semi retraité

    Informations forums :
    Inscription : Novembre 2016
    Messages : 169
    Points : 98
    Points
    98
    Par défaut VBA et requête
    Merci du fichier additionnel *.zip

    Cela va m' être grandement utile et accroître du même coup

    mon intérêt à un des mes passe-temps favoris de semi-retraité.

    Jacques

  10. #10
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    ... à un des mes passe-temps favoris de semi-retraité.
    Bienvenue au club !
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  11. #11
    Membre régulier Avatar de jajoju
    Homme Profil pro
    Semi retraité
    Inscrit en
    Novembre 2016
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Semi retraité

    Informations forums :
    Inscription : Novembre 2016
    Messages : 169
    Points : 98
    Points
    98
    Par défaut VBA et requête
    Bonjour,

    Je ne comprends pourquoi une fenêtre paramètre apparaît et me demande d'entrer le champs de la ville
    Ma Zone de liste s'appelle Liste2
    Ma Zone de liste déroulante s'appelle filtreVille
    Je cherche l'erreur.
    Par contre quand je tape une valeur dans la case , ça fonctionne !

    Merci
    Nom : 2.jpg
Affichages : 259
Taille : 45,2 Ko
    ----------------------------------------------------------------------------------------------------
    Nom : 3.jpg
Affichages : 240
Taille : 45,5 Ko
    ----------------------------------------------------------------------------------------------------
    Nom : 1.jpg
Affichages : 263
Taille : 61,5 Ko

    ---------------------------------------------------------------
    Nom : 4.jpg
Affichages : 234
Taille : 15,0 Ko

  12. #12
    Membre régulier Avatar de jajoju
    Homme Profil pro
    Semi retraité
    Inscrit en
    Novembre 2016
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Semi retraité

    Informations forums :
    Inscription : Novembre 2016
    Messages : 169
    Points : 98
    Points
    98
    Par défaut VBA et requête
    Bonjour,

    J'ai pu résoudre le problème en changeant la ligne du critère ( voir image )

    Maintenant tout fonctionne et j'essaie de comprendre pourquoi

    Merci

    Nom : 7.jpg
Affichages : 256
Taille : 10,2 Ko

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

Discussions similaires

  1. [VBA] Problème requête-FindFirst
    Par Sethouille dans le forum Access
    Réponses: 7
    Dernier message: 18/08/2006, 09h11
  2. Réponses: 6
    Dernier message: 09/06/2006, 00h19
  3. [VBA-E] Requète SQL avec chemin de base de données variable
    Par Svart26 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 26/05/2006, 13h29
  4. [VBA-E] Requête ODBC
    Par ftrifiro dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 04/04/2006, 10h48
  5. [VBA-A] Requête SQL
    Par Berny03 dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 24/11/2005, 21h16

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