At 2004-10-10 04:01, Patrick ROUSSEL wrote:
Bonjour,
J'utilise depuis peu OOo et j'essaye de m'initier à la programmation de
macro avec l'API.
Je bute sur une difficulté, et je ne suis pas encore parvenu, malgré la
lecture de différents ouvrages publiés en ligne aussi bien sur les macros,
l'API ou la programmation, en français et en anglais, à trouver la
solution à mon "problème".
J'espère que des utilisateurs du forum, plus expérimentés, pourront
m'aider, et je les (vous) remercie par avance.
J'ai réalisé une boîte de dialogue, qui comporte des champs de contrôle
(liste, texte, numérique, monétaire). je souhaiterais que cette boîte de
dialogue serve d'interface pour entrer des données dans un classeur Calc.
Or, je ne parviens pas à établir la liaison entre ces champs de contrôle
et les cellules de mon classeur. Je souhaiterais également pouvoir
utiliser la barre de défilement pour passer d'une ligne à l'autre dans ma
feuille et faire apparaître, au fur et à mesure, les données déjà
enregistrées, dans les champs de contrôles.
Je "sens" que cela ne doit pas être trop compliqué à faire, mais mon
statut de grand débutant m'empêche pour l'instant de toucher au but.
Je suis donc preneur de vos conseils et solutions éventuelles.
Patrick ROUSSEL
Je pense que tu veux rentrer des données successivement, dans la même
session de dialogue. Pour cela il faut récupérer les valeurs des contrôles
quand par exemple l'utilisateur actionne un bouton "envoi" dans le dialogue.
Pour faire apparaître des données de Calc dans les contrôles, il faut
qu'une macro les lise et s'en serve pour remplir les contrôles.
En résumé, il faut savoir manipuler un dialogue par macro, gérer des
évènements, écrire et récupérer correctement des données dans chaque type
de contrôle à utiliser, et savoir lire et écrire dans des cellules
quelconques d'un tableur Calc. Pas mal de connaissances à assimiler...
En y réfléchissant, cela ressemble à vouloir faire un formulaire pour
modifier une base de données Calc, parce qu'un formulaire sur une bdd Calc
est en lecture seule. Ce serait une mauvaise solution, car il y a sûrement
de bonnes raisons pour cette limitation. Dans cette hypothèse il vaut mieux
abandonner cette voie et créer un formulaire sur une vraie bdd.
Bernard