OVH Cloud OVH Cloud

Explications de termes !

3 réponses
Avatar
TOF
Bonjour,

Voilà, j'ai une instruction que j'ai recopié d'un programme et j'aimerai
savoir ce que cela veux dire !

DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70

Puis je avoir une explication la dessus merci à vous !

3 réponses

Avatar
Eric
Bonjour,

Il s'agit du code généré par l'assistant losrsque tu crées un bouton
dont l'objectif est de sauvegarder un enregistrement.

Sur le formulaire en mode visualisation, cela revient à cliquer sur le
menu Enregistrements et l'action Sauvegarder enregistrement.

Depuis access97, le Docmd.DoMenuItem est remplacé par DoCmd.RunCommand
et donc l'équivalent serait aujourd'hui :
Docmd.RunCommand acCmdSaveRecord pour des bases Acces97 et +, sauf
erreur de ma part.

Le DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, ,
acMenuVer70 assure une comptabilité avec les versions antérieures à 97.

Tout cela extrait de l'aide (F1 sur DoMenuItem)



Bonjour,

Voilà, j'ai une instruction que j'ai recopié d'un programme et j'aimerai
savoir ce que cela veux dire !

DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70

Puis je avoir une explication la dessus merci à vous !


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Gilles MOUGNOZ
Bonjour,
Voilà, j'ai une instruction que j'ai recopié d'un programme et j'aimerai
savoir ce que cela veux dire !
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
Puis je avoir une explication la dessus merci à vous !


Bonjour, Tof

Cette commande effectue l'enregistrement des modifications en cours sur
l'enregistrement courant du formulaire actif.
Elle désigne explicitement la barre de menu, le menu et enfin la commande
qui va être exécutée.
En fait, en lisant l'instruction à l'envers et en traduisant en français,
tout devient clair !
Si Raymond SENEQUE était dans le coin, il te dirait certainement qu'il faut
désormais lui préférer l'instruction suivante:
< DoCmd.RunCommand acCmdSaveRecord >
J'espère ne pas dire de bêtise mais je crois que ces 2 instructions
déclenchent une erreur si aucune modification n'a été faite sur
l'enregistrement courant.
L'avantage de la deuxième est qu'elle permet de s'affranchir de la version
de la barre d'outils (paramètre "acMenuVer70").
Par contre, je ne sais pas si elle est valable pour toutes les versions
d'Access...

Bonne continuation

Avatar
3stone
Salut,

"TOF"
| Voilà, j'ai une instruction que j'ai recopié d'un programme et j'aimerai
| savoir ce que cela veux dire !
|
| DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70



En complément de ce qui à déjà été dit...

Evite les DoMenuItem comme la peste !
Le fait que les assistants crée du code aussi crade montre seulement que MS
se soucie plus de la compatibilité pour le débutant, quà du code propre :-(

De plus, dans le cas présent, c'est avantageusement remplacé par :

Me.Dirty = False

qui ne renvoie pas d'erreur, quelque soit le cas.


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/