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 :

Aller directement dans un objet de la base


Sujet :

Access

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 13
    Points : 7
    Points
    7
    Par défaut Aller directement dans un objet de la base
    Bonjour,

    Ma question a deux volets:

    J'aimerais savoir si à partir d'un bouton de commande d'un formulaire on peut se diriger directement dans un des "objets" de son choix dans la base de donnée.

    Ex. je voudrais basculer directement vers les objets "requêtes" dans la fenêtre Base de données.

    Est-ce que je peux masquer par programmation les autres objects (ex. les tables, formulaires, états, modules, macros...) de la fenêtre Base de données ?

    Merci de votre aide

  2. #2
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonjour,
    si à partir d'un bouton de commande d'un formulaire on peut se diriger directement dans un des "objets" de son choix...........Est-ce que je peux masquer par programmation les autres objects (ex. les tables, formulaires, états, modules, macros...) de la fenêtre Base de données ?
    Oui, bien sur.....
    Par exemple sur l'événement "Sur clic" d'un bouton de commande...:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub cmdCacherObjet_Click()
    'Cache la fenêtre des Objets de la base
    DoCmd.SelectObject acTable, , True
    DoCmd.RunCommand acCmdWindowHide
    End Sub
     
    Private Sub cmdAfficherObjet_Click()
    'Ré-affiche la fenêtre des Objets de la base
    'et se positionne directement dans la partie Requête
    DoCmd.SelectObject acQuery, , True
    End Sub
    Bonne continuation.....
    FreeAccess
    "Petit à petit l'araignée tisse sa toile"

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Merci FreeAccess

    Ça fonctionne pour aller dans l'objet requête, merci beaucoup.

    Bon voici la suite de ma question. En ce faisant est-ce que je peux cacher les liens vers les autres objets (tables, formulaires etc...)

    Et une autre question un peu plus complexe. Dans cette même fenêtre je me suis créé dans "Groupes" une fenêtre "Fusion" où j'ai recopié mes requêtes de fusion. Est-ce possible d'aller directement à cet endroit (comme ton code m'a permis d'aller directement dans l'objet "requête" ?

    Merci encore

  4. #4
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonjour,
    Dans cette même fenêtre je me suis créé dans "Groupes" une fenêtre "Fusion" où j'ai recopié mes requêtes de fusion. Est-ce possible d'aller directement à cet endroit
    Alors pour cette question......je pose un Jocker........et je passe la main à quelqu'un de plus compétent......

    En ce faisant est-ce que je peux cacher les liens vers les autres objets (tables, formulaires etc...)
    Tu peux éventuellement t'inspirer de ce code:
    http://www.utteraccess.com/forums/sh...11&Main=692211

    Cela dit, je pense que si ton seul but est de masquer tes tables, formulaires, etc.....à tes utilisateurs, cela fait quand même un peu "usine à gaz"..
    Maintenant, si c'est dans un but de maintenance (donner la possibilité à une personne autorisée...), la solution de masquer directement la fenêtre est la meilleure.....et tu n'autorise son affichage par exemple qu'apès la saisie d'un mot de passe.....à voir....
    FreeAccess
    "Petit à petit l'araignée tisse sa toile"

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 13
    Points : 7
    Points
    7
    Par défaut T'as raison
    T'as raison FreeAccess ça fait un peu usine à gaz.

    Mais je voulais donner l'occasion aux utilisateurs d'aller faire leur propre requête tout en ne se perdant pas dans les dédales de la fenêtre de Base de données et aller modifier malencontreusement d'autres objets.

    Alors t'as bien répondu à ma première interrogation et je t'en remercie et je déclare donc ce topic comme étant résolu.

  6. #6
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonjour,
    Mais je voulais donner l'occasion aux utilisateurs d'aller faire leur propre requête
    Et bien voila.......il fallait le dire plus tôt.......

    Pour cela tu peux très bien créer un Formulaire de recherche qui permettra à tes utilisateur de créer leurs propres requêtes....
    Tu as quelques tutos à disposition sur ce Forum; regarde en autre:
    http://loufab.developpez.com/recursivite/
    http://loufab.developpez.com/recursivite2/
    http://loufab.developpez.com/recursivite3/

    ou encore:
    http://cafeine.developpez.com/access...echerchemulti/

    Voila bonne lecture....et bonne application de tout ce code ....
    FreeAccess
    "Petit à petit l'araignée tisse sa toile"

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 13
    Points : 7
    Points
    7
    Par défaut Ah bon!
    Merci beaucoup FreeAccess je vais aller voir ça en détail.

  8. #8
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 13
    Points : 7
    Points
    7
    Par défaut hummm
    Ça commence mal pour un tutoriel, j'ai déjà un problème dans le premier lien:
    http://loufab.developpez.com/recursivite/

    Ce code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set rst = CurrentDb.OpenRecordset("tbl_TempLstTbl")
    donne "incompatibilité de Type" (erreur 13)... Il s'agit d'ajouter les noms de tables de la base dans la table "tbl_TempLstTbl"

    et si je fais:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set rst = CurrentDb.OpenRecordset(tbl_TempLstTbl)
    erreur 3078 - ne peut trouver la table source

    Est-ce que tu peux m'aider FreeAccess ?

  9. #9
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonsoir,.....
    Est-ce que tu peux m'aider FreeAccess ?
    Bien sur........... .......mais également tous les autres et en premier l'auteur de ce fabuleux tuto (Fabrice CONSTANS dit loufab)

    Dans un premier temps as tu bien suivi les recommandations du paragraphe VII-B-1:
    Vous devez d'abord ajouter la référence suivante : Microsoft DAO 3.6 Object Library
    Dans la fenêtre Microsoft Visual Basic, utilisez le menu Outils/Références
    .
    FreeAccess
    "Petit à petit l'araignée tisse sa toile"

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 13
    Points : 7
    Points
    7
    Par défaut Merci
    Oui FreeAccess j'avais bien suivi la recommandation et c'est la première chose que j'ai vérifié car le message d'erreur pointait du code DAO.

    Loufab m'a répondu ceci:
    L'incompatibilité de type se produit lorsque l'on affecte à une variable typée (dim rst as recordset) une valeur ou entité qui n'est pas du bon type.

    Dans un premier temps vérifiez que la variable rst est bien de type recordset.
    Sinon vérifiez que la référence DAO est avant une éventuelle ADOx dans la liste.
    Sinon forcez le typage de la variable en faisant précéder recordset du mot clef DAO. Comme ceci

    dim rst as dao.recordset

    Notez que qu'il vaut mieux écrire les mots réservés VBA en minuscule, si ils sont pris en compte correctement ils se transformeront en majuscule. comme ceci

    Dim rst As DAO.RecordSet
    Je l'ai essayé et ça fonctionne. D'après toi est-ce qu'il y a une autre façon de contourner le problème ?

  11. #11
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    Hello,

    ce n'est pas un problème, c'est le fonctionnement normal ...
    Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
    12 tutoriels Access



  12. #12
    Membre expert
    Avatar de FreeAccess
    Homme Profil pro
    Un monde ou prendre est plus facile qu'apprendre.
    Inscrit en
    Mars 2006
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Un monde ou prendre est plus facile qu'apprendre.

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 745
    Points : 3 834
    Points
    3 834
    Par défaut
    Bonjour.....
    Je l'ai essayé et ça fonctionne. D'après toi est-ce qu'il y a une autre façon de contourner le problème ?
    Mais tu n'as plus de problème.....puisque comme te le dit cafeine "..c'est le fonctionnement normal..."
    En plus loufab t'a même fais un cours perso.......

    Sinon, ici tu as encore l'explication "logique" de ton problème:
    http://access.developpez.com/faq/?pa...#IncompTypeRst

    Bonne continuation.
    FreeAccess
    "Petit à petit l'araignée tisse sa toile"

  13. #13
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 13
    Points : 7
    Points
    7
    Par défaut Merci encore!
    Ah, tout s'éclaire maintenant avec ce lien Merci FreeAccess. Maintenant je comprends, si je n'utilises pas mes "références" dans le même ordre qu'un autre utilisateur le problème risque de survenir donc je prends note!

    Maintenant je crois bien que je peux identifier ce topic comme étant résolu.

    Alors encore MERCI à vous !

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

Discussions similaires

  1. Upload fichier direct dans base SQL Server
    Par yuan dans le forum ASP
    Réponses: 1
    Dernier message: 25/02/2010, 18h53
  2. Réponses: 0
    Dernier message: 27/09/2008, 12h45
  3. Sérialiser un objet directement dans une base de données
    Par Kehel dans le forum Débuter avec Java
    Réponses: 4
    Dernier message: 22/08/2008, 09h45
  4. Exporter directement dans une autre base
    Par moi26 dans le forum Import/Export
    Réponses: 5
    Dernier message: 16/07/2008, 15h02
  5. [OutLook] Aller directement dans "nouveau message"
    Par pierrot67 dans le forum Delphi
    Réponses: 2
    Dernier message: 11/02/2007, 17h10

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