Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Modifier une valeur dans une table à l'aide d'un bouton de commande (code vb)

4 réponses
Avatar
Sesbiosfv
Bonjour,

J'ai un projet avec 2 tables et 2 formulaires correspondants (#1 et
#2). #1 =E0 une case =E0 cocher nomm=E9 "Statut" (activ=E9 par d=E9faut) et
un bouton pour ouvrir #2. Dans #2, il y a un champ qui peut d'ou on
peut s=E9lectionner les cl=E9s primaires de #1 qui ont le champ Statut
d'actif. Apr=E8s avoir remplis #2, il y a un bouton de commande qui
ferme le formulaire au clic.

Je d=E9sire ajouter du code (vb ou autre) =E0 ce bouton pour qu'il
d=E9coche (rend inactif) le champ Statut de la ligne s=E9lectionn=E9e par
la cl=E9 primaire plus haut.

La solution ne doit pas n=E9cessairement =EAtre en vb, tant que la
solution fonctionne bien avec le bouton de fermeture.


Merci en avance,=20
Sebastien

4 réponses

Avatar
Jessy Sempere [MVP]
Bonjour

tu peux effectivement soit utiliser une macro pour lancer une requête de
mise à jour,
soit utiliser VBA pour lancer plus ou moins la même requête de mise à jour
mais
en utilisant la synthaxe sql et currentdb.execute.

La 2ème méthode te permettra d'éviter les messages d'avertissement sans être
obligé
d'utiliser une ligne spécifique pour annuler les messages d'avertissement.

Le sql ou la requête que tu dois faire doit avoir comme champ ta clé
primaire avec comme
critère ta zone de sélection de ton formulaire #2 et ton champ statut avec
comme mise à jour
pour ce champ False.

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Sesbiosfv" a écrit dans le message news:

Bonjour,

J'ai un projet avec 2 tables et 2 formulaires correspondants (#1 et
#2). #1 à une case à cocher nommé "Statut" (activé par défaut) et
un bouton pour ouvrir #2. Dans #2, il y a un champ qui peut d'ou on
peut sélectionner les clés primaires de #1 qui ont le champ Statut
d'actif. Après avoir remplis #2, il y a un bouton de commande qui
ferme le formulaire au clic.

Je désire ajouter du code (vb ou autre) à ce bouton pour qu'il
décoche (rend inactif) le champ Statut de la ligne sélectionnée par
la clé primaire plus haut.

La solution ne doit pas nécessairement être en vb, tant que la
solution fonctionne bien avec le bouton de fermeture.


Merci en avance,
Sebastien
Avatar
Sesbiosfv
"Le sql ou la requête que tu dois faire doit avoir comme champ ta clé
primaire avec comme critère ta zone de sélection de ton formulaire #2
et ton champ statut avec comme mise à jour pour ce champ False. "


Pouvez-vous m'écrir un peu plus en détail la marche à suivre?
Je me suis rendu dans l'option définition des données d'une requète
vide, mais je ne sais pas le code à écrire là.
Avatar
Sesbiosfv
J'ai trouvé ;)

DoCmd.SetWarnings False

DoCmd.RunSQL "UPDATE [Appel recu] SET [Statut]=off WHERE [No
appel]=([Formulaires]![Appels sortant]![Texte42]) ;"

DoCmd.SetWarnings True
Avatar
Jessy Sempere [MVP]
Bonjour

Et ben voilà c'est cool...

Sinon si tu veux éviter de gérer les SetWarnings, tu peux remplacer ton code
par :

CurrentDb.Execute "UPDATE [Appel recu] SET [Statut]=off WHERE [No
appel]=([Formulaires]![Appels sortant]![Texte42]) ;"

@+
Jessy Sempere - Access MVP

------------------------------------
Site @ccess : http://access.jessy.free.fr/
Pour l'efficacité de tous :
http://users.skynet.be/mpfa/
------------------------------------
"Sesbiosfv" a écrit dans le message news:

J'ai trouvé ;)

DoCmd.SetWarnings False

DoCmd.RunSQL "UPDATE [Appel recu] SET [Statut]=off WHERE [No
appel]=([Formulaires]![Appels sortant]![Texte42]) ;"

DoCmd.SetWarnings True