Tutoriel réalisé avec Access 2013
Dans un formulaire, il peut être intéressant de créer des boutons afin de faciliter l’utilisation de ce dernier surtout s’il est utilisé par plusieurs personnes qui ne maîtrisent pas forcément Access.
Pour ce tutoriel, je vais utiliser le formulaire que j’ai créé lors du tutoriel sur la création d’un sous-formulaire et auquel j’ai supprimé ce dernier. Vous trouverez cette base de données au bas de l’article.
SOMMAIRE
Création d’un bouton de contrôle
Tout d’abord, j’ouvre le formulaire Clients et je passe en Mode Création en cliquant sur la flèche du bouton Affichage , puis Mode Création
.
Dans l’onglet Création, je vais rechercher l’icône Bouton dans la liste des Contrôles. Mon curseur se transforme en croix avec un rectangle pour m’indiquer que je peux placer le bouton.
Soit je dessine le bouton, soit je fais un simple clic sur la zone de mon choix, le bouton sera, de toute façon, redimensionné. Je vais placer les boutons dans la zone Pied de formulaire , mais je pourrais les placer dans les deux autres parties.
Je clique donc à l’endroit où je souhaite disposer un des boutons sachant que je pourrais le déplacer par la suite.
Choix de l’action
Une boîte de dialogue s’ouvre avec plusieurs catégories qui permettent d’exécuter plusieurs actions :
Dans mon exemple, je vais créer des boutons de navigation à l’image de ce que l’on peut voir dans le formulaire classique si l’on ne modifie pas les paramètres à savoir premier enregistrement, enregistrement précédent, enregistrement suivant, dernier enregistrement et ajouter un enregistrement, mais aussi dupliquer un enregistrement, supprimer un enregistrement, rechercher un enregistrement, imprimer l’enregistrement en cours et quitter l’application.
Pour commencer, dans la catégorie Déplacements entre enreg., je choisis Premier enregistrement. Dans la partie exemple, je peux voir le bouton qui sera généré et je clique sur Suivant.
Choix de l’affichage
À cette étape, je peux modifier l’image figurant sur le bouton. Je peux remplacer l’image par du texte, dans ce cas, Premier enregistrement, mais je peux aussi le modifier si je trouve que l’image n’est pas assez parlante. Je peux aussi choisir une autre image que l’image par défaut ou encore choisir une image sur le disque dur en cliquant sur Parcourir…. En cochant Afficher toutes les images, d’autres images s’afficheront, mais dans ce cas, n’importe quelle image sera affichée même celles qui n’ont rien à voir avec un premier enregistrement et il faudra faire le tri.
Une fois que le visuel vous convient, cliquez sur Suivant.
Choix du nom du bouton
À cette dernière étape, on me demande de nommer le bouton, j’ai par défaut Commande71 que je vais laisser, mais si vous comptez modifier le code évènement dans les macros il est préférable de le renommer afin de vous y retrouver. Cliquez sur Terminer.
Mon bouton est créé, je peux le déplacer, le redimensionner ou le supprimer.
Je vais maintenant faire de même pour chacun des boutons.
Comment créer d’autres boutons de contrôle ?
Je reclique sur l’icône Bouton des Contrôles, je place le bouton à la suite, je choisis les options suivantes et je ne modifierai ni l’image ni le nom du bouton, mais vous pourrez le modifier si vous le souhaitez :
- Pour l’enregistrement précédent : Déplacements entre enreg. ➡ Enregistrement précédent
- Pour l’enregistrement suivant : Déplacements entre enreg. ➡ Enregistrement suivant
- Pour le dernier enregistrement : Déplacements entre enreg. ➡ Dernier enregistrement
- Pour ajouter un enregistrement : Opérations sur enreg. ➡ Ajouter un nouvel enregistrement
- Pour dupliquer un enregistrement : Opérations sur enreg. ➡ Dupliquer un enregistrement
- Pour supprimer un enregistrement : Opérations sur enreg. ➡ Supprimer un enregistrement
- Pour rechercher un enregistrement : Déplacements entre enreg. ➡ Rechercher un enregistrement
- Pour imprimer l’enregistrement : Opérations sur enreg. ➡ Imprimer un enregistrement
- Pour quitter l’application : Applications ➡ Quitter une application
Je dispose chacun des éléments à ma convenance en les sélectionnant avec la souris et en les glissant ou en les déplaçant avec les touches directionnelles du clavier.
Je passe ensuite en Mode formulaire en cliquant sur l’icône au-dessus de l’Affichage ou en cliquant sur la flèche puis Mode Formulaire
.
Mes boutons sont opérationnels.
Finalisation du formulaire
Pour terminer, je vais masquer les boutons de navigation du formulaire d’origine ainsi que le sélecteur qui est la barre à gauche du formulaire entre le menu des objets Access et le formulaire. Ce sélecteur permet de savoir entre autres si l’enregistrement en cours est enregistré.
Pour cela, je retourne dans le Mode Création , et, dans l’onglet Création, je clique sur le bouton Feuille de propriétés
.
Dans le menu déroulant, assurez-vous d’être sur Formulaire, si ce n’est pas le cas, sélectionnez-le et, dans l’onglet Format, à la ligne Boutons de déplacement, changez le Oui en Non.
Faites de même à la ligne Afficher sélecteur et modifiez le Oui en Non.
Désormais, dans le Mode Formulaire , le formulaire ne contient plus que les actions nécessaires à ce dernier.
Si vous vous y connaissez en macro, vous pourrez modifier l’action exécutée lorsque vous appuyez sur un de vos boutons. Pour cela, dans le Mode Création , cliquez droit sur l’un des boutons dont vous souhaitez modifier l’action puis Créer code événement…
. Vous vous retrouvez dans les Outils de macro où vous pouvez supprimer l’action, la modifier ou en rajouter une autre.
Impossible sur Access 2007 de créer un champ calculé dans la base.
Pas de choix en mode feuille de données en cliquant droit champ calculé !!
Comment puis-je faire ?
Il faut créer une requête car, effectivement, le champ calculé n’existait pas auparavant.
Bonjour,
Je veux savoir comment on peut supprimer des données dans un tableau de formulaire ?
Merci.
Bonjour,
Il suffit de les supprimer dans la table correspondante.
Bonjour,
Je voudrais savoir comment concevoir un formulaire (avec masque de saisie afin de filtrer selon des critères) et effectuer des requêtes sur le résultat de ce formulaire.
Merci.
Bonjour,
Il n’y a pas de rapport avec cet article et votre demande a l’air précise, je vous invite à faire une demande de devis.
Ceci étant, un masque de saisie ne permet pas de filtrer, mais d’appliquer un format. Exemple : 99 99 99 99 99 pour un numéro de téléphone français qui s’affichera automatiquement avec des espaces.
Bonjour,
Lorsque je crée mon formulaire et que je mets une liste déroulante, est-ce possible de mettre une macro à ma liste en sorte que lorsque je sélectionne quelque chose dans ma liste, il m’ouvre un autre formulaire ?
Bonjour, je voulais savoir comment créer les boutons affichés Access et comment avoir une bonne interface avec Access ?
Merci de vous lire très bientôt !
Bonjour,
Le tuto ci-dessus vous l’explique et pour l’interface, je vous invite à suivre ce tutoriel.
Je voudrais de l’aide concernant la création d’un formulaire de connexion par password.
Merci.
Bonjour,
Je vous invite à faire une demande de devis.
Bonjour,
J’ai suivi votre tuto qui est assez explicite hormis pour un point.
Le bouton suivant me permet bien d’accéder aux divers enregistrements, mais après le dernier enregistrement, il m’amène à un enregistrement vide ce qui fait que le bouton ajout d’enregistrement ne sert plus à rien… Comment résoudre ce souci ?
D’avance merci et un grand bravo pour votre remarquable boulot.
Bonjour, il n’y a pas de solution, car cela est tout à fait normal, même quand vous utilisez les boutons de navigation en bas des formulaires.
Dans l’assistance Bouton de commande, comment effectuer les opérations concernant « Opérations sur états > Aperçu d’un état » ?
Merci d’avance !!!
Il suffit simplement de choisir l’état en question.
Bonjour,
Comment faire en sorte de modifier une donnée d’un formulaire juste en cliquant sur un bouton (dans mon cas, je voudrais afficher l’heure à laquelle on clique sur le bouton) ?
Merci.
Bonjour,
Dans le contrôle du bouton, ajoutez le code à l’évènement sur clic :
Private Sub Monbouton_Click()
Monchampheure.Requery
End Sub
Bonsoir,
J’ai une base de données Access et j’ai déjà fait un plat de forme sur VBA, mais je ne sais pas comment faire pour que les données soient enregistrées sur la base de données même. J’ai déjà ajouté la base de données Access au VBA, mais ça ne donne rien.
Je veux des explications ou bien m’envoyer un projet sur ma boîte e-mail. Merci.
Bonjour,
Je suis désolée, mais je n’ai rien compris.
Salut à tous. J’ai créé un formulaire Access en mode assistant, mais le bouton « Annuler » ne marche pas donc j’ai écrit un code VBA sous le bouton, mais ça ne prend pas effet. Comment faire ?
Bonjour,
Je ne comprends pas de quel bouton « Annuler » vous parlez. Pour qu’un code VBA fonctionne, il faut que la procédure évènementielle soit écrite sur une des lignes d’évènement dans les propriétés.
Salut, merci beaucoup, j’ai trouvé la solution à mon problème de bouton.
Comment créer un utilisateur avec mot de passe pour se connecter à un formulaire Access ?
Bonjour,
Cela va faire l’objet d’une future mini-formation. N’hésitez pas à vous inscrire à la newsletter pour Access pour être tenu informé.
Merci pour vos tutoriels, ils m’ont aidé plus d’une fois. Cependant, je suis confronté à un problème. J’aimerais relier mon formulaire avec mon sous-formulaire par l’intermédiaire d’une touche. En gros, je ne veux pas avoir les données du formulaire et du sous-formulaire sur la même page. En sélectionnant le nom d’un client, j’aimerais, après avoir appuyé sur une touche, avoir accès à ses données (exemples : facture, adresse, photo de profil…)
Merci infiniment.
Bonjour,
Ça complique les choses pour le même résultat, mais ce code devrait pourvoir fonctionner en remplaçant F_Factures par le nom du sous-formulaire et ID_Facture par le nom du champ commun (clé primaire pour l’un et clé étrangère pour l’autre) :
DoCmd.OpenForm "F_Factures", , , "[ID_Facture] = " & ID_Facture
Je pense avoir réussi. Encore une fois, un grand merci 🙂
Bonjour,
Je suis en train de faire un formulaire dans lequel je souhaite avoir un ordre l’alphabétique en dessous. Je souhaite avoir A, B, C…Z. Si clic sur « A » dans lequel le peux voir tous les « noms » en « A ». Je souhaite créer un code qui va me chercher, à travers un « bouton », tous les noms en A et ainsi de suite, et, dans ce code, je souhaite aussi bloquer toutes les autres lettres, si je clique sur A, je veux que les A et B que les B etc.
Merci d’avance.
Bonjour,
Il faut baser le formulaire sur une requête dont le champ de critère serait la lettre.
Merci pour ta réponse, je l’ai résolu, mais mon problème devient assez complexe maintenant.
Je souhaite sauvegarder un code pour qu’il soit automatiquement sur 2 tables. J’ai essayé avec un formulaire et un sous-formulaire avec la propriété père et fils, mais ça ne marche pas. Il ne le sauvegarde que dans la table du formulaire. Merci de me donner une autre technique.
Bonjour,
On ne sauvegarde pas un « code », mais si le but est de copier les mêmes données dans 2 tables, cela ne sert à rien, car Access est justement fait pour éviter les redondances contrairement à Excel.
Bonjour,
Merci à tous.
Je voudrais savoir comment gérer les dates de convocation à partir de la date du jour, ce qui est date du jour + 30, mais avec une contrainte qui est, qu’au-delà de 20 entrées, toutes les suivantes auront pour date de convocation la date du jour + 31.
Merci d’avance.
Il faut le programmer en VBA.
Bonjour,
Je suis en train de travailler sur un dossier où j’ai utilisé Access. J’ai créé un bouton, mais je ne me souviens plus l’utilité… Pouvez-vous m’expliquer en bref mots s’il vous plaît ?
Laétitia
Bonjour,
Je ne peux le savoir à votre place. Il faut regarder dans l’onglet Événement pour voir si le nom de la macro ou le code VBA écrit vous dit quelque chose.
Bonjour,
S’il vous plait, j’ai créé une petite base de données avec des macros et des boutons et je souhaite la rendre comme une application en l’affichant en mode diaporama. S’il vous plait, veuillez m’aider et merci d’avance.
Bonjour,
Que voulez-vous dire, car il n’y a pas d’affichage en mode diaporama dans Access ?
D’accord, je veux que ma base de données soit comme une application, dès que tu l’ouvres, elle s’affiche en plein page.
Elle est déjà prête, j’ai juste besoin de cette touche pour la finaliser, sinon, est-ce que je peux l’exporter ailleurs et faire ce que j’ai dit ?
Merci.
Il y a ce code.
Bonjour,
Je suis débutant en Access et je n’ai pas bien compris ce code, est-ce que vous pouvez m’aider encore plus s’il vous plait ?
Merci et désolé de vous déranger.
Bonjour,
Qu’est-ce que vous n’avez pas compris ? Il faut le copier dans un module et le reste dans votre formulaire d’ouverture.
Bonjour,
Est-ce que c’est possible d’ajouter un lien HTML à une application Access ?
Merci.
Bonjour,
Vers quoi mène ce lien ?
Bonjour,
Je veux qu’il mène vers une page Google, pas comme les trucs de localisation.
Merci.
Bonjour,
Dans ce cas, il faut ajouter ce code : http://www.commentcamarche.net/forum/affich-19435352-ouvrir-une-page-internet-depuis-vba
Salut, d’abord, je vous remercie beaucoup pour les vidéos que vous avez faites. Moi je veux savoir une chose concernant VBA Access. Ma question est la suivante : comment convertir des dates en chiffres. Exemple : 01/01/1980 et dans une autre cellule va se convertir comme ça : Premier janvier mille neuf cent quatre-vingt.
Bonjour,
Voici un lien.
Bonjour !
Après avoir créé un bouton « dupliquer formulaire » dans mon formulaire, lorsque je clique dessus voici le message :
l’action « copier » Exécuter Commande ne peut pas être exécutée en mode désactivé
Pouvez-vous m’aider ?
Bonjour,
Peut-être n’avez-vous pas activé les macros ?
Bonjour,
Il m’arrive fréquemment qu’en plaçant un nouveau bouton sur une zone d’un formulaire, la fenêtre assistance bouton de commande ne s’ouvre pas automatiquement, même plusieurs fois de suite, au point d’être bloqué pour la création de boutons. Comment faire pour faire apparaître ultérieurement et à volonté cette fenêtre d’assistance ?
Merci.
Bonjour,
Pour que l’assistant se lance, il faut placer le contrôle dans le formulaire principal et non sous-formulaire (ou alors l’ouvrir indépendamment).
Il faut aussi que le bouton Utiliser les assistants contrôle soit activé.
Merci pour la réponse, mais le bouton Utiliser les assistants contrôle est bien évidemment activé.
Et c’est bien dans le formulaire principal que ce phénomène arrive, mais pas systématiquement… Mais quand ça arrive, c’est persistant…
Essayez de voir si cela ne vient pas de votre ordinateur (https://www.generation-nt.com/reponses/assistant-controle-marche-pas-entraide-1029281.html).
Sinon, désolée, je ne vois pas, ce sont les 2 choses que j’ai vues jusqu’à présent qui pouvaient poser problème.