[Résolu][Base]enregistrer/attacher 1 macro à 1 formulaire

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
frannyz
NOOuvel adepte
NOOuvel adepte
Messages : 17
Inscription : 31 oct. 2011 16:30

[Résolu][Base]enregistrer/attacher 1 macro à 1 formulaire

Message par frannyz »

Bonjour
je ne comprenais pas pourquoi un formulaire de table ne montrait que les 40 premiers enregistrements. J'ai eu la réponse sur le forum. Je voudrais que à l'ouverture du formulaire celui ci indexe automatiquement tous les enregistrements et montre leur nombre réel
J'ai trouvé une réponse donnée par piaf :
Tu devrais peut-être travailler sur le resultset du formulaire.
qui indique un code qui a l'air de marcher d'après la personne à qui il l'indiquait

Code : Tout sélectionner

Sub Ouverture
Dim rst as Object
   rst = thisComponent.DrawPage.Forms.getByName("Nom Interne du formulaire").createResultSet
   rst.last
   rst.First
End Sub

Mais je ne sais pas où l'écrire et l'enregistrer pour que ça s'exécute automatiquement quand je clique sur les formulaires de cette table
Par ailleurs j'ai 2 formulaires credit et credit-virements pour la table qui s'appelle credit
doit-on renseigner leurs noms dans le code et où ?
cree-t-on un resulset pour les 2 formulaires ou chaque formulaire a-t-il son resultset ?

Code : Tout sélectionner

......getByName("credit","credit-virement",).createResultSet.......
rien trouvé sur le forum ni sur les docs
j'ai créé les formulaires avec l'assistant
merci d'avance
Fran
Dernière modification par micmac le 16 mai 2019 20:31, modifié 3 fois.
Raison : Ajout de la coche verte
Open office 4.1.6 sous windows 7
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
Messages : 9251
Inscription : 28 août 2010 08:45

Re: [base]Comment enregistrer/utiliser 1 macro pour formulai

Message par micmac »

Rappel sur les balises : la première lettre en majuscule, le reste eń minuscules, le tout entre crochets.
Veuillez corriger ce balisage pour vos deux derniers sujets.
Touche Ctrl de Windows = touche cmd⌘ sur Mac
Outils > Options sur Windows = OpenOffice > Préférences sur Mac
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

Re: [base]Comment enregistrer/utiliser 1 macro pour formulai

Message par Piaf »

Re
Ouvre ton formulaire en mode édition et vérifie le nom "interne"
Form.png
et affecte la macro à l'événement Lors du chargement du formulaire
macro.png
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
frannyz
NOOuvel adepte
NOOuvel adepte
Messages : 17
Inscription : 31 oct. 2011 16:30

Re: [Base]Comment enregistrer/utiliser 1 macro pour formulai

Message par frannyz »

bonsoir
merci beaucoup grace à ça j'ai écrit ma macro

Code : Tout sélectionner

REM  *****  BASIC  *****
Sub Ouverture
Dim rst as Object
   rst = thisComponent.DrawPage.Forms.getByName("credit").createResultSet
   rst.last
   rst.First
End Sub
credit étant le nom du formulaire auquel la macro est attachée
par la section
fichier->nouveau document texte->outils->macros->gèrer les boites de dialogue->nouveau
je le précise pour que les débutants comme moi ne passent pas leur temps à chercher où le faire
Je l'ai enregistrée dans mes macros sous le nom creditcompta

Puis grace aux 2 images d'exemples (merci Piaf) j'ai pu l'attacher au formulaire

mais à l'ouverture de celui ci , j'ai un message d'erreur (image jointe)
je suis sure que c'est une erreur lambda, désolée
que dois je faire ?
merci d'avance
Fran
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Open office 4.1.6 sous windows 7
Piaf
GourOOu
GourOOu
Messages : 5622
Inscription : 25 nov. 2011 18:07
Localisation : Guyane

Re: [Base]Comment enregistrer/utiliser 1 macro pour formulai

Message par Piaf »

Bonjour
Vérifie le nom du formulaire dans l'onglet Général des propriétés du formulaire.
Si ça ne résout pas le problème, merci de joindre une base sans données confidentielles mais de mêmes structures que ta base de travail.
A+
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
frannyz
NOOuvel adepte
NOOuvel adepte
Messages : 17
Inscription : 31 oct. 2011 16:30

Re: [Base]Comment enregistrer/utiliser 1 macro pour formulai

Message par frannyz »

Tu as raison, dans l'onglet général le nom était MainForm, j'ai changé et mis credit , et ça permet d'ailleurs d'attacher la même macro sur les 2 formulaires ce qui est bien pratique
MERCI BEAUCOUP
Open office 4.1.6 sous windows 7