Date: prev next · Thread: first prev next last
2024 Archives by date, by thread · List index


Bonjour
suite de mon dernier message.
Le contournement que j'envisageais (mise en place d'une validité de la colonne) est mis en œuvre). 
Il fonctionne en tant que contrôle et bloque donc l'utilisateur. Mas je n'ai pas trouvé comment 
obtenir un message contenant le montant dans le contrôle de validité.
Existe t'il un moyen de particulariser son contenu en fonction d'autres cellules ?
Merci par avance

________________________________
De : francois.saint-christophe@orange.fr <francois.saint-christophe@orange.fr>
Envoyé : lundi 26 août 2024 14:34
À : Jean-Francois Nifenecker <jean-francois.nifenecker@sud-ouest.org>; users@fr.libreoffice.org 
<users@fr.libreoffice.org>; fourcroy.christian@free.fr <fourcroy.christian@free.fr>
Objet : RE: *** SPAM *** Re: [fr-users] Calc : Ajout de formule automatiquement dans nouvelle ligne

Je vais essayer de vous faire parvenir l'outil et ses composants calc et base. Toutefois, manips 
préalables pour moi pour transformer les fichiers réels en fichiers anonymes.

En ce qui concerne la différence entre tableur et base de données, je ne confonds pas du tout. Je 
connais bien. J'essaie de voir si calc n'intègre pas une fonctionnalité avec logique base de 
données (il en a déjà plusieurs) et ce afin de respecter un paramètre important pour moi : ne pas 
complexifier le développement pour permettre à un non programmeur de prendre le relais. Si j'avais 
complétement libre ou si çà avait été pour moi uniquement, j'aurai fait complétement différemment 
et sans doute sans LO, logiciel de bureuatique !
Mon public n'est pas footballeur, peut sans doute suivre une formation, peut être sans grande 
motivation car utilisation ultérieure limitée, et pratiquera très peu, donc oubliera vite. 
(constaté par expérience).
Mes constats également : l'appel à des requêtes base dans un ods est faite. Il ne s'agit donc pas 
de les intégrer, de les créer, mais simplement de les maintenir (tri, critères de sélection, ce qui 
est déjà beaucoup plus simple).
Table dynamique : j'ai essayé mais je ne pouvais obtenir ou approcher les présentations qui me sont 
demandées par des tiers (club maison mère, fédération nationale, conseil départemental). J'ai donc 
abandonné.
Formulaire de calc : j'avais essayé mais de mémoire, je ne pouvais pas réutiliser les "validités" 
déjà définies. Je me note de le tester à nouveau.

En échangeant avec vous et les répondeurs de la liste, il m'est venu une autre idée. La fonction 
validité peut me permettre de vérifier si un montant saisi est égal à un montant calculé. Si 
différence, affichage d'un message d'erreur. Je vais regarder si ce message peut contenir le 
montant calculé. Un des intérêts serait également de se déclencher automatiquement lors de la 
sortie de la cellule. Je teste et fais un retour sur la liste. Si KO, je préparerai ods et odb 
anonymisés pour aide complémentaire.




________________________________
De : C Fourcroy <cfourcroy@free.fr>
Envoyé : lundi 26 août 2024 11:20
À : francois.saint-christophe@orange.fr <francois.saint-christophe@orange.fr>; Jean-Francois 
Nifenecker <jean-francois.nifenecker@sud-ouest.org>; users@fr.libreoffice.org 
<users@fr.libreoffice.org>
Objet : Re: *** SPAM *** Re: [fr-users] Calc : Ajout de formule automatiquement dans nouvelle ligne

Bonjour

Je pense que vous devriez nous faire parvenir un exemple de votre
application (Calc et Base) afin de bien comprendre votre problème et
votre façon de voir les choses.

Pour autant que je comprenne votre problème, vous vous méprenez sur les
possibilités des logiciels :
Il y a une logique, un mode de fonctionnement propre à chaque logiciel.
Et, comme beaucoup de gens,  vous confondez Calc et Base , Tableur et
Base de données :

  * Un tableur contient des formules sur une zone donnée, puis, ces
    formules s'adaptent ensuite aux données introduites. Mais les
    formules sont toujours préexistantes. Y compris pour "validité" ,
    puisque que, avant de définir les critères de validité, il faut
    sélectionner la zone où elle s'applique. On pourrait en dire autant
    des mises en forme conditionnelles. Validité et Format
    conditionnelle ne sont pas des formules au sens strict du terme
    (quoique on puisse y utiliser aussi des formules), mais en interne,
    ces deux fonctionnalités sont traitées comme telles. Dans un tableur
    le but est de faire des calculs, la présentations et la manipulation
    des données sont secondaires. Tout ceci quelque soit le tableur,
    sinon ce ne serait pas un tableur .
  * Une base de données contient des données (les tables sont
    préexistantes à tout le reste) puis  met en forme, fait des calculs
    en fonction de ces données (grâce aux formulaires et aux requêtes).
    Dans une base de données le but est de faire de la manipulation de
    données , que ce soit la présentation, la sélection ou le calcul,
    les traitements s'adaptent aux données présentent.

La solution standard de votre problème est de tout traiter dans Base.
Base n'est pas vraiment plus compliqué que Calc. surtout si vous
admettez déjà que la création et la manipulation de requêtes dans Base
sont assez simple. Et si vous partez du principes que la personne qui va
faire la maintenance de l'application maîtrise la manipulation de
formules dans Calc. La création de formules de calcul dans une requête
Base n'est pas très différente. En tant que formateur , je peux vous
dire que les fondements de Base peuvent se maîtriser en 35 heures
environ, y compris par des footballeurs en cours du soir ;)  (je ne me
moque pas des footballeurs, je n'ai aucun a priori sur leur niveau
intellectuel, c'est juste un cours que j'ai réalisé il y a quelques temps)

En dernier recours, si Base vous sert essentiellement à filtrer des
données et à les présenter,  je pense qu'une solution possible dans Calc
est de passer par une "Table dynamique" avec filtre mais, a priori, la
complexité sera identique. Et aussi de créer le "formulaire" de
présentation dans Calc, surtout si celui-ci est de forme tabulaire. NB :
la notion de formulaire dans Calc (Données-Formulaire), n'a rien à voir
avec celle de Base, je parle simplement de créer une présentation avec
disposition et mise en forme de certaines cellules. Un peu comme
certaines personnes utilisent les tableurs pour écrire leur courrier ;)

Bon courage

Christian
Le 26/08/2024 à 08:46, francois.saint-christophe@orange.fr a écrit :
Merci Jean-François pour cette réponse.
Mes réponses :
1-"La feuille de saisie peut faire appel à une formule de cotisation,, ça ne
pose pas de pb. "
Si, car chaque nouvelle ligne (= un nouvel adhérent), est vide aucune formule n'est positionnée. 
C'est bien mon problème.

2-"Le stockage devrait être sur un feuille *séparée* du classeur. En
l'occurrence par simple recopie des valeurs de la feuille de saisie.
S'il y a plusieurs feuilles de saisie, vous pouvez soit les agglomérer
dans une unique feuille de données soit gérer plusieurs feuilles de
stockage, en fonction du besoin.
-> Liez alors cette/ces feuille-s à votre odb (où elle devien-nen-t
une/des table-s) et non pas la-les feuille-s de saisie.
"
C'est bien ce que j'ai fait et décrit : une feuille de saisie (= "onglet" dans ma description, 
=une table dans l'odb), et x feuilles dans le même ods, et ce autant qu'il y a de besoins de 
restitution (formatage, calcul, tri, couleur...). Mais en faisant ainsi, cela ne peut traiter mon 
besoin. Je souhaite que à la saisie, l'utilisateur voit le montant des cotisations et ce sans 
être obligé de changer de feuille...etc...

3-"Comme vous devinez à mon commentaire, finalement la bonne route n'est
pas le tableur, même mâtiné de SGBD. Passez en 100% Base, quitte à
conserver le tableur comme interface d'interrogation/rapports."
Je connais bien les principes que vous évoquez (saisie, traitement, stockage), ce qu'est un SGBD. 
Mon souci est, comme indiqué, de ne pas complexifier la maintenance pour celui qui la reprendra. 
Si je fais du pur SGBD, un formulaire...la complexité monte d'un cran que je me suis interdit.  
(actuellement, si des actions de maintenance sont nécessaires dans Base, elles seront limitées à 
des modifications de critères de sélection, tri...dans les requêtes, qui peuvent se réaliser par 
l'interface graphique d'édition des requêtes dans Base, donc assez simple).
J'ai simplement constaté que LO, dans calc avait bien intégré des fonctionnalités nativement 
plutôt SGBD (tri, actualiser la plage, validité). Notamment cette dernière, que j'ai bien observé 
fonctionner n'est pas qu'une fonctionnalité tableur.
J'espérais que LO ait développé une génération automatique d'une formule dans une cellule 
atteinte par la saisie. La complexité et la logique d'un tel développement me semble d'un niveau 
analogue à celui induit par la fonctionnalité "Validité".  Au vu des 1eres réponses, cela ne 
semble pas être le cas. J'en ferai mon deuil.

4-"Comme vous devinez à mon commentaire, finalement la bonne route n'est
pas le tableur, même mâtiné de SGBD. Passez en 100% Base, quitte à
conserver le tableur comme interface d'interrogation/rapports."
Comme indiqué en 3, tout passer en Base implique une maintenance plus complexe.



________________________________
De : Jean-Francois Nifenecker<jean-francois.nifenecker@sud-ouest.org>
Envoyé : dimanche 25 août 2024 22:59
À :users@fr.libreoffice.org  <users@fr.libreoffice.org>
Objet : *** SPAM *** Re: [fr-users] Calc : Ajout de formule automatiquement dans nouvelle ligne

Bonsoir François,

Le 25/08/2024 à 19:19,francois.saint-christophe@orange.fr  a écrit :
Bonsoir,
tout d'abord, j'espère avoir plus de chance que lors de mes échanges précédents avec cette liste 
: les caractères accentués n'étaient pas pris en compte et les messages pas trop lisibles. J'ai 
alors reçu le conseil de ne plus passer par le web orange. J'utilise donc outlook. Nous verrons !
Je confirme que tout va bien !

Pour les besoins d'une section d'un club auquel j'appartiens, j'ai développé un outil qui permet 
de faire la gestion nécessaire :
- saisie du fichier adhérent dans un .ods
[...]

Je prévois d'ajouter une colonne cotisation.
Je souhaiterai qu'à chaque nouvel adhérent saisi, cette colonne se charge automatiquement de la 
formule de calcul des cotisations.
J'ai essayé de la prevaloriser par copier coller sur un grand nombre de lignes. Le problème est 
que tous ces lignes sont vues comme des lignes de la base de données ods. Et c'est contraire à 
la logique de base de données.
oui.

Dans votre tableur, il faut faire ce que font les professionnels dans
les SGBD (systèmes de gestion de bases de données) : séparer la saisie,
le traitement et le stockage.

La feuille de saisie peut faire appel à une formule de cotisation,, ça ne
pose pas de pb. Elle correspond(rait) à un "formulaire" dans un SGBD.
Dans certains cas on peut même imaginer plusieurs feuilles de saisie
dédiées à plusieurs types de données.

Le stockage devrait être sur un feuille *séparée* du classeur. En
l'occurrence par simple recopie des valeurs de la feuille de saisie.
S'il y a plusieurs feuilles de saisie, vous pouvez soit les agglomérer
dans une unique feuille de données soit gérer plusieurs feuilles de
stockage, en fonction du besoin.
-> Liez alors cette/ces feuille-s à votre odb (où elle devien-nen-t
une/des table-s) et non pas la-les feuille-s de saisie.



Comme vous devinez à mon commentaire, finalement la bonne route n'est
pas le tableur, même mâtiné de SGBD. Passez en 100% Base, quitte à
conserver le tableur comme interface d'interrogation/rapports.

Mais en attendant, la méthode indiquée ci-dessus devrait vous aider.

Je précise que, pour rester dans la logique retenue pour le développement initial, je ne 
souhaite pas utiliser de macro.
Une fonction de LO permet elle celà ?
Oui, Base (voir ci-dessus) :-)

Bonnes suites !


Très cordialement,
--
Jean-Francois Nifenecker, Bordeaux

--
Envoyez un mail àusers+unsubscribe@fr.libreoffice.org  pour vous désinscrire
Les archives de la liste sont disponibles àhttps://listarchives.libreoffice.org/fr/users/
Privacy Policy:https://www.documentfoundation.org/privacy


--
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à https://listarchives.libreoffice.org/fr/users/
Privacy Policy: https://www.documentfoundation.org/privacy

-- 
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à https://listarchives.libreoffice.org/fr/users/
Privacy Policy: https://www.documentfoundation.org/privacy

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.