A propos du Grenier Access

Le Grenier Access, c’est…

  • Un catalogue de trucs et astuces sur le logiciel Microsoft Access (ou Microsoft Office Access, c’est la même chose !).
  • Un blog : vous pouvez donc poster vos commentaires sur les articles publiés, les compléter, les enrichir…

Le Grenier Access, ce n’est pas…

  • Un site d’actualité
    Vous ne trouverez pas ici d’actualité Access, histoire de ne pas mélanger les genres (un blog devient vite un grand bordbazar, sinon :-)) : pas d’infos sur les betas Access, sur les sorties de nouvelles versions, ni sur les correctifs… Si ces infos vous intéressent, vous pouvez consulter mon autre blog, plus généraliste : blog.self-access.com.
  • Un forum de discussion
    Merci de ne pas poster de questions dans vos commentaires. Du style : « comment fait-on ceci ou cela ? ». Sauf cas particulier, bien sûr (en rapport avec un article du Grenier). Si vous cherchez une aide sur un problème particulier, un bout de code VBA, etc., faites plutôt une visite aux forums Self-Access.

Pourquoi un blog ?

  • Le premier côté pratique du blog, c’est la possiblité, pour chaque visiteur, de pouvoir laisser des commentaires.
  • Ensuite, les articles peuvent être classés de manière structurée (les catégories), mais également de manière transversale (les tags). Ce qui permet plus facilement de recouper les informations, de retrouver les articles.
  • Enfin, vous pouvez vous abonner à toutes sortes de flux RSS (le principal : celui du blog, mais aussi les flux par catégories ou par tags, selon ce qui vous intéresse). Une façon pratique d’être tenu au courant, automatiquement, des nouveaux articles parus sur le site !
Note
Si vous laissez un commentaire sur le blog, il n’apparaîtra pas immédiatement : les commentaires sont modérés pour éviter les messages sauvages de #?%* spammeurs.

Making of 🙂

Le montage de ce blog a été possible grâce à :

  • DotClear : moteur de blog en PHP ;
  • Le thème graphique Welsh, de Kozlika, qui m’a servi de base et que j’ai dérivé à ma sauce ;
  • L’excellent GeSHi pour la coloration syntaxique ;
  • Un petit plugin perso pour l’affichage des screencasts.

Aucune souris n’a été blessée ni tuée pendant le tournage de cette séquence (hum, certains témoins auraient vu quelques touches de clavier se faire frapper…).

Configuration conseillée

Pour lire ce blog dans des conditions optimales, je vous conseille :

  • Une résolution écran minimale de 1280×1024.
    Ca marche aussi en 1024×768, mais c’est un peu serré !
  • Un navigateur Internet récent : Internet Explorer 7, Mozilla Firefox 2 ou Opera 9.
    Les images PNG s’afficheront très mal avec IE6 (fond noir).

Vous aimerez aussi...

38 réponses

  1. laurent dit :

    Bonsoir,
    J’aimerai avoir une petite idée sur la progressbar d’access accessible via Controle ActiveX, en ce moment je suis confronté à un problème, je voudrai savoir si il est possible de paramétrer cette progressbar et de l’avoir de la façon suivante:
    En fonction de l’avancement du projet c’est à dire lui rentrer une date de début et une date de fin de projet.

    • Hervé Inisan dit :

      De quelle ProgressBar s’agit-il ? (il y a plusieurs variantes)

      • laurent dit :

        Il s’agit de la Microsoft ProgressBar Control 6.0

      • laurent dit :

        Bonjour,
        Il s’agit de Microsoft Progressbar control 6.0, le but de mon étude est de savoir l’avancement d’un projet en pourcentage afin d’indiquer à l’utilisateur le temps qui le reste avant la date butoire

        • Hervé Inisan dit :

          La ProgressBar accepte une valeur entière qui est par défaut comprise entre 0 et 100.
          Sur le principe, il faudrait calculer un pro-rata d’une date (la date du jour ?) par rapport au début du projet, et en déduire le nombre entre 0 et 100.
          Ça pourrait donner quelque chose comme :

          A debugger et à adapter bien sûr. Dans mon exemple :
          – Ma ProgressBar s’appelle Progression
          – Mes champs Date de début et de fin sont explicites (je suppose qu’il s’agit de Dates/Heures).

  2. Hervé Inisan dit :

    Christine > 🙂

  3. Christine dit :

    Les utilisateurs ne touchent JAMAIS à la dorsale, c’est strictly forbidden.

    Je vais leur demander de vérifier que tout est bien à jour partout la prochaine fois, aussi bien au niveau de la frontale que d’Access.

    Et puis on verra bien… J’ai pas eu de nouvelles depuis 10 jours, pas de nouvelles bonnes nouvelles, on va dire!

    Encore merci!!

  4. Hervé Inisan dit :

    Christine > A priori, des macros et du VBA peuvent cohabiter techniquement. Maintenant, si effectivement il y a des modifications « non maîtrisées », ça peut être compliqué.

    Notamment, est-ce qu’en cas de modification, les personnes pensent à mettre à jour la base frontale sur chaque machine ? Si ce n’est pas le cas, on peut avoir des frontales différentes qui créent des actions différentes sur la base, et là, on peut imaginer des problèmes… 😉

    D’autre part, j’espère que les utilisateurs modifient uniquement la frontale, et ne touchent absolument pas à la dorsale !

  5. Christine dit :

    Bonjour Hervé, merci de ta réponse…

    Pas sûr du tout que toutes les machines aient toutes les dernières version d’Office!!!

    Et il y a un autre paramètre, qui peut peut-être influer…

    Je développe les modules en VB, mais le client, lui, rajoute des trucs en langage macro.
    Oui, je sais, c’est nul de leur avoir laissé la main, mais ils sont super euh… pointilleux en matière de mise en forme et moi j’ai pas que ça à faire, donc dans le principe c’est eux qui le font.

    Et il peut donc arriver qu’ils suppriment un bouton ou une liste de recherche et la re-créent, et comme l’enregistreur est revenu en « langage macro »… C’est sûrement pas génial pour la stabilité, si?

    Merci encore de ton aide!!!!

  6. Hervé Inisan dit :

    Christine > Bonjour Christine !

    Pas facile de diagnostiquer sans avoir l’application sous les yeux. Il y a peut-être un peu de réseau derrière, mais, vu les symptômes, pas forcément que ça. Par exemple, un ajout d’étiquette sur un formulaire n’a qu’un impact du côté de la frontale, et aucun lien avec le réseau.

    Au cas où : est-ce que les machines ont les dernières mises à jour d’Office ?

    Sinon, est-ce que je peux avoir un exemple de code qui ne marcherait pas ? (genre : liste de recherche)

  7. Christine dit :

    Bonjour Hervé,

    quelques années qu’on ne s’est pas vus, j’ai fait mes débuts en vbA grâce à toi… 😉

    Je suis trèèèèès embêtée avec un base sous Access 2010, elle fonctionne parfaitement en local, mais chez le client elle est instable, très instable même, on a des liens hypertextes qui deviennent inactifs et des gros bugs dans les formulaires, des calculs qui ne se font plus ou des listes modifiables de recherche qui renvoient des messages d’erreur.
    Pour te donner une idée, j’ai modifié le type du champ de « lien hypertexte » en « texte » puis de nouveau en « lien hypertexte », le problème a été résolu… de façon très temporaire puisque 10 minutes après le problème avait recommencé.
    Et dans les formulaires, si on rajoute n’importe quel objet, même une simple étiquette, ça re-fonctionne temporairement aussi.

    Et en local tout fonctionne parfaitement.
    La frontale est en local sur les postes, et les données sur le réseau (Je crée des lecteurs virtuels sur mon ordi quand je veux tester).

    Des pistes, autres qu’un réseau foireux? L’administratrice n’y connaît rien en Access, bien sûr, sinon c’est pas drôle…

    Christine

  8. Hervé Inisan dit :

    Mounir > Est-ce que tu peux préciser la question en donnant un exemple ? Et sinon, quelle est ta structure de tables ?

  9. Mounir dit :

    Bonjour, Hervé! et bonjour tout le monde.
    j’ai lu votre livre sur ACCESS 2001 et je l’ai trouvé super.
    J’ai un petit problème avec un les dates dans une base access:
    en faite je veut créer la liste de présence d’un groupe qui a cours chaque deux jours de la semaine (par exemple : lundi-jeudi, dimanche – mardi …pour afficher les dates correspondants à chaque jour.

  10. Vincent dit :

    Merci Hervé…
    Je n ai vu qu après que je n était pas au bon endroit !! Sorry 😉
    Vincent.

  11. Hervé Inisan dit :

    Vincent > Difficile de répondre dans un commentaire, les scénarios sont très variables. Mais effectivement, un petit tuto pourrait aider, je vais y réfléchir. 😉

  12. Vincent dit :

    Bonjour Hervé!
    Je cherche à mettre à jour et comparer deux listes de prix!
    J arrive à peu près à voir les refs qui manque dans la base 1 ou 2…
    Par contre les prix sont susceptible de changer et j ai plus de 3000 références!
    En gros voici les trois champs à comparer!
    Référence / désignation / prix.
    L’idée serait de voir uniquement les prix qui ont changés.
    Est-ce possible d avoir un tuto rafraîchissant sur les mises a jour de ce type?
    Merci pour ton aide!
    Vincent.

  13. Hervé Inisan dit :

    Airbus > Quand on double-clique sur un JPG, manuellement, dans Windows, c’est bien la visionneuse correcte qui s’affiche ?

    Et dans la table, le champ est simplement de type Lien hypertexte ?

  14. Airbus dit :

    Bonjour,
    J’ai une appli pour mes photos qui tourne depuis plusieurs années sur Access 2003, puis 2007 et maintenant 2010.
    Cette base de données photos me permet, grâce à un lien hypertexte dans un formulaire, de visualiser mes photos selon certains critères prédéfinis.
    Jusqu’à présent, j’ai toujours réussi à voir les photos via la visionneuse windows ou autre logiciel adapté à cet objet. Depuis un mois, j’ai changé d’ordinateur et j’ai Windows è.
    Lorsque je clique sur mon lien hypertexte, systématiquement, l’ordinateur ouvre Internet Explorer et non pas la visionneuse qui est pourtant le logiciel choisi par défaut pour les fichiers jpg.
    Comment puis-je changer ça ?
    Merci de votre aide.

  15. Hervé Inisan dit :

    kidordine > Si ce sont des questions spécifiques (sans rapport avec les articles du blog), le meilleur endroit pour les poster est le Forum Access. Les forums sont plus simples pour les échanges de ce type.

    Ouala !

  16. Hervé Inisan dit :

    az0te > Super 🙂

  17. az0te dit :

    Au final après de nombreuses heures de recherche j’ai trouver une solution pour mon menu général.

    Merci pour l’aide que vous avez pu me fournir durant mon travail pratique.

    Continuez comme ça !!
    az0te.

  18. kidordine dit :

    Bonjour, je ne suis peut-être pas très dégourdi…Je ne sais même pas si je suis au bon endroit: je voudrais juste savoir où et comment poser ne question sur l’utilisation d’access 2003.
    Merci, bonne journée.

  19. Hervé Inisan dit :

    az0te > Sur Access, il n’est possible de créer des boutons (des objets en général) dynamiquement que si le formulaire ou l’état sont en mode Création. Ça veut dire que l’application devrait dans ce cas basculer du mode normal au mode Création dynamiquement. Cette bascule est possible techniquement (c’est un argument du DoCmd.OpenForm), mais :

    1. Ce n’est pas esthétique. C’est ce que font les Assistants Access quand ils construisent des objets. C’est ok si c’est ponctuel et plutôt réservé au développeur de l’application, mais pas vraiment quelque chose pour l’utilisateur final.
    2. Ça ne marchera pas sur une base protégée au format MDE ou ACCDE : dans ces formats, le mode Création est désactivé sur les formulaires et les états.

    Quelles contraintes motivent la réécriture du SwitchBoard (puisque ce sera la même chose) ?

  20. az0te dit :

    Bonjour,
    Après mon problème d’absence dans liste me voilà confronté à un autre problème qui est une exigence pour mon travail pratique.
    Le problème est que je dois créer un menu général pour mon application sans passer par des macros mais en VBA et le tout doit être automatisé par rapport à la table switchboarditems donc je ne sais plus où donner de la tête je me tourne vers vous pour savoir si vous auriez une idée.

    Autre chose je ne peux pas simplement sur un formulaire mettre des bouton statique tout doit être en dynamique et je ne vois vraiment pas comment faire actuellement avez-vous une petite solution voir même le grâle avec un tutoriel :D.

    Je vous remercie d’avance.
    az0te.

  21. Hervé Inisan dit :

    gertigre > Dans ce cas, la seule solution est d’exporter à partir de VBA : un Recordset (DAO ou ADO) qui va parcourir la table ou requête, et qui va générer le code XML requis.

  22. gertigre dit :

    Comment écrire dans un fichier xml selon un format xsd?
    Le format d’exportation xml d’access 2010 ne correspond pas au format désiré.
    Merci!

  23. Hervé Inisan dit :

    Djeli > Merci pour le feedback 🙂 Voici quelques éléments de réponse :

    1. Le livre Référence Access 2007 est épuisé. Il m’en reste juste quelques exemplaires personnels.
    2. Pas de version Access 2010 de prévue. Peut-être une version 2013.
    3. Si les questions sont directement liées à l’article du blog, c’est bien ici le bon endroit pour poster ! Il faut juste savoir que je n’ai pas le temps de répondre en temps réel (je réponds lorsque j’ai un peu de disponibilités, ça peut dépendre de ma charge de travail dans la vraie vie). Pour des sujets qui n’ont pas de rapport avec le blog, ou pour échanger avec d’autres personnes, il y a aussi les forums du site.
  24. Djeli dit :

    Bonjour Mr. Inisan,

    Moi je suis un pure produit Inisan car c’est grâce à vous que j’ai connu Access (votre livre sur Access 2003 paru chez Micro Application). Aujourd’hui j’arrive à créer des applications qui fonction parfaitement(la gestion d’un parc automobiles, la paie, gestion commerciale, caisse, et aujourd’hui je termine une pour la gestion d’un établissement scolaire, pas mal pour un débutant)

    1-Aujourd’hui je cherche à migrer pour une version d’Access plus récente (Access 2007) mais je ne trouve nul part votre livre sur cette version, Pourquoi?

    2-Y a t-il une parution prochaine pour Access 2010?

    3-je pose souvent des questions sur le blog sans vraiment savoir si c’est le bon endroit, comment savoir où poser mes questions et comment savoir si il y a eu une réponse?

    Merci pour tout ce que vous faite pour nous
    Take care

  25. Hervé Inisan dit :

    Yves30 > Plutôt qu’une boîte spéciale pour sélectionner le client, il est plus pratique de faire une liste déroulante sur le formulaire Clients lui-même. Cette liste peut rechercher un client par son nom (par exemple). Quelques infos complémentaires sur cette page.

  26. Yves30 dit :

    Bonjour,

    Je suis actuellement entrain de construire une BD Access pour gérer mes clients. J’aimerais me faire une boîte de dialogue connexion par laquelle je peux choisir le client que je veux et ainsi accéder à son formulaire  »Client ». J’ai tout essayé, mais je n’y arrive pas. J’ai pris l’exemple d’une BD dans Access et malheureusement, les macros ne réfèrent pas aux bons endroit, ce qui est logique. Cependant, je n’arrive pas à corriger les macros…

    Merci de votre aide, je suis désespéré ! 😛

  27. Hervé Inisan dit :

    Tafiloo > Effectivement, une requête UNION est une requête spéciale, elle n’apparaît pas « à l’extérieur » d’Access. Je viens de poster un article pour donner une solution rapide.

  28. Tafiloo dit :

    Bonjour.. Adepte de H.INIZAN dont j’ai le bouquin édité chez Micro Application, j’ai malgré tout un souci d’ignare!
    J’ai créé sur Access 2007 une requête Union (simple association de deux tables avec champs Nom et Prénom). Le fonctionnement est nominal sauf qu’il ne m’est pas possible d’importer sur Excel où j’ai besoin du résultat et d’une mise à jour permanente. En plus, la requête n’apparaît pas sur la liste lors de l’exécution de la procédure d’importation de Données Externes.
    Merci pour l’aide.

  29. Hervé Inisan dit :

    Greg > Pour ce type de mise à jour, les commandes SaveAsText et LoadFromText peuvent sans doute s’appliquer. SaveAsText sauvegarde la définition d’un objet sous forme de fichier texte, et LoadFromText charge dans une base une définition texte.

    Sur la base de départ, on peut donc envisager un :

    Et sur la base d’arrivée :

    A aménager bien sûr en fonction du projet !

  30. Greg dit :

    Bonjour,

    J’ai réalisé un projet sur Access, qui est à présent installé sur plusieurs postes de ma société.

    J’aimerai, au moyen d’un exécutable, par exemple, pouvoir ajouter un formulaire à cette base de donnée.

    L’idée est de pouvoir distribuer l’exécutable à toutes les personnes utilisant cette base de donnée, afin d’effectuer une mise à jour sans trifouiller.

    Est-ce possible, ou est-ce une idée farfelue à abandonner vite fait ?

    Merci pour vos réponses ! :o)

  31. herve dit :

    Salut Hervé,

    Comme mon nom l’indique, je Kiff graffe ta façon de faire.
    mais je vais bien avoir ces astuces en PDF ou.Doc histoire d’approfondir

    Merçi.

    Hervé B.

  32. bonsoy dit :

    Je suis à la recherche depuis des jour d’une progressbar pour access 2000 « pour la frime » et je suis tomber sur ton site je le connais pas encore mais promais de l’exporer et de te tenir au courant je débute la programation en access 2000 c’est que j’au juste la licence pour lui a+

  33. Noël dit :

    Hervé,

    Je viens de découvrir le site forum.self-Access. Je vais essayer de trouver dessus et excuse moi d’avoir posé une question sur ce Blog.
    Je poserai ma question à partir du forum.
    Bonne soirée.
    Noël

  34. Jean dit :

    Bonjour,
    Je souhaiterais créer un petit site web de rappel de date (anniversaires, fêtes …). il faut donc que je crée une base de données avec inscription avec l’adresse mail qui génère un mot de passe automatique envoyé à cette adresse; puis nom et date à entrer pour alimenter la base et rappel par mail 3 ou 5 jours avant la date prévue. Bien sûr il faudrait prévoir que l’inscrit puisse consulter et modifier ses dates en lignes en se connectant par login (adresse mail) et mot de passe. Vous serait il possible de m’indiquer comment faire.
    Je vous en remercie. Cordialement, Jean

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *