Bonjour, Lorsque l'on associe l'exécution d'une macro à un évènement de l'application en passant par le menu Outils > Personnaliser > Événements, l'évènement à l'origine du déclenchement de la macro n'est pas passé en paramètre.
Il faut donc remplacer : Sub onClickOuvrirFmTbClients( oEvent as variant ) OpenForm( OEvent.Source.Model.Parent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, OEvent.Source.Model.Parent.ActiveConnection, "FmTbClients") end sub par : Sub onClickOuvrirFmTbClients() OpenForm( thisComponent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, thisComponent.ActiveConnection, "FmTbClients") end sub Cordialement, T. Vataire ----- Mail Original ----- De: "Jean Sympa" <jsy...@free.fr> À: "Prog" <prog@fr.openoffice.org> Envoyé: Mercredi 1 Juillet 2009 11h23:18 GMT +02:00 Harare / Pretoria Objet: [prog] Prog Une erreur dans une macro Bonjour à toutes et à tous, Prog Une erreur dans une macro Je voudrais, au démarrage d'une application, afficher un menu avec trois options. Je voudrais associer à chaque option un bouton qui me permettrait d'ouvrir un sous formulaire. Le retour d'un sous formulaire au menu ferait appel à un deuxième bouton. Jean-Michel Pierre et François Gatto m'ont proposé un exemple. Il y a une erreur dans le formulaire, ouverture des formulaires. Je n'arrive pas à la corriger REM ***** BASIC ***** ' ouverture des formulaires ' se fait par appel d'une fonction Sub onClickOuvrirFmTbClients( oEvent as variant ) OpenForm( OEvent.Source.Model.Parent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, OEvent.Source.Model.Parent.ActiveConnection, "FmTbClients") end sub *Erreur d'exécution BASIC* *L'argumentt n'est pas facultatif* Sub onClickOuvrirFmTbRegion( oEvent as variant ) OpenForm( OEvent.Source.Model.Parent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, OEvent.Source.Model.Parent.ActiveConnection, "FmTbRegion") end sub Sub onClickOuvrirFmTbDestinataires( oEvent as variant ) OpenForm( OEvent.Source.Model.Parent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, OEvent.Source.Model.Parent.ActiveConnection, "FmTbDestinataires") end sub Sub onClickOuvrirFmTbProduits( oEvent as variant ) OpenForm( OEvent.Source.Model.Parent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, OEvent.Source.Model.Parent.ActiveConnection, "FmTbProduits") end sub Sub onClickOuvrirFmTbLivraisonProduits( oEvent as variant ) OpenForm( OEvent.Source.Model.Parent.ActiveConnection.Parent.DatabaseDocument.FormDocuments, OEvent.Source.Model.Parent.ActiveConnection, "FmTbLivraisonProduits") end sub function OpenForm( formContainer as variant, oConnection as variant, sFormName as string) as variant Dim aProp(1) As New com.sun.star.beans.PropertyValue aProp(0).Name = "ActiveConnection" aProp(0).Value = oConnection aProp(1).Name = "OpenMode" aProp(1).Value = "open" OpenForm = formContainer.loadComponentFromURL(sFormName,"_blank",0,aProp()) end function Avec mes remerciements Cordialement Papy --------------------------------------------------------------------- To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org For additional commands, e-mail: prog-h...@fr.openoffice.org