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


D'abord, au cas où ça suffise :


4 vous voulez qu'une formule s'ajoute alors qu'avant elle n'existait pas ? Événement 
=declencheur=macro. Il faut adapter votre souhait pour faire sans
Si la cellule (de la colonne) s'affiche "vide" tant qu'il n'y a pas de saisie. Cela ne pourrait il 
pas convenir ? Pour cela il suffit d'imbriquer votre calcul dans un "SIERREUR" ou une autre 
fonction de contrôle tout dépend de ce que vous contrôlez et de votre situation précise. 
Pour la maintenabilite : la colonne en question doit être verrouillée (avec ou sans mot de passe). 
Lors de la maintenance on déverrouille, c'est fait pour ça !


Ensuite si ça n'est pas adapté à votre situation, c'est qu'il faut mieux comprendre votre besoin :
si vous pouviez nous joindre vos fichiers ou une version "exemple" cela simplifierait l'échange. 
Les valeurs des données importent peu. Ce qui compte c'est la structure que vous avez construite.

J'insiste encore une fois, j'ai du mal à visualiser précisément le détail de ce que vous faites. Ce 
qui peut expliquer que mes questions tombent a côté 

1 et 2
Mes questions cherchent à analyser votre processus.
Bien sûr que techniquement vous n'avez dit qu'une seule fois a Base que votre fichier ods était une 
base de données. C'est ce qu'on appelle définir une source de données (dans les menus de 
LibreOffice. 
Ensuite, le système d'information que vous avez créé réponds a un ensemble de besoin. Il permet de 
réaliser différentes opérations (chaque opération définie sur son objectif-et non sur la façon dont 
vous le réalisez- est alors un cas d'usage)
Donc je restreins la question aux opérations qui concernent les cotisations. 

Je vous explique le  point 3 avant de reformuler les points 1 et 2.
Je comprends que vous faites une saisie dans Calc, et que vous générez des rapports dans Base.
Dans Calc vous importez (comme source de données là encore) ces différents rapports.

Par ailleurs vous voulez valider vos cotisations au moment de la saisie et non après génération du 
rapport.
Pour cela vous cherchez à utiliser une fonction de Calc mais sans succès car votre définition d'où 
fichier ods comme Base de données vous empêche d'arriver au résultat souhaité.
L'impression que ça donne est que vous tournez en boucle (,=on se mord la queue) : Base appelle 
Calc qui appelle Base ou inversement..... 
Il y a donc besoin de démêler les opérations et de savoir quand vous allez dans un sens et quand 
vous allez dans l'autre. 

1 espace de modification = saisie, calculs et non pas juste un affichage ou un import. 

Quand est-ce que vous faites des opérations dans Calc liées aux cotisations (ex saisie ou calcul) 
et lesquelles ?
Quand est-ce que vous faites des opérations (ex génération de rapport)  dans Base, liées aux 
cotisations et lesquelles

Si dans votre processus, vos étapes, vous faites a un moment une opération A dans Calc et à un 
autre moment une opération A bis (qui ne diffère que parce qu'on s'y prend différemment mais le 
résultat attendu est identique) dans Base, il faut que ce soit plus clair et il faut choisir ...

En espérant que mes questions vous paraissent moins obscures (sinon c'est qu'il faut attendre que 
le soleil se lève ... )

Claire


5 ok, 


⁣Claire ​

Le 25 août 2024, 21:56, à 21:56, "francois.saint-christophe@orange.fr" 
<francois.saint-christophe@orange.fr> a écrit:
Je veux bien essayer de compléter mais je ne comprends pas trop
1-"Quand est ce que Calc constitue "l'espace de modification"" : pouvez
vous expliciter "espace de modification" ?

2-"Quand est-ce que Calc constitue "la source de données" dans Base ?"
: le lien entre l'odb et la table de l'ods est faite une fois pour
toute. L'accès aux interfaces base n'est pas du tout nécessaire pour
l'utilisateur. Etait ce la question ?

3-"Ce que je crois comprendre c'est que " on se mord la queue" comme on
dit dans ce genre de situation .. est-ce juste ?"
je ne vois pas comment on se mord la queue. Pouvez vous préciser ?

4-"Vous faites vod saisies et votre calcul "en live" dans un 1er
classeur."
oui mais pour faire des calculs en live, il me faut une formule de
calcul. C'est que je souhaite faire : qu'elle s'insère automatiquement
dans une colonne donnée chaque fois que l'on saisit dans une nouvelle
ligne.

5-"Sinon cette opération de validation en direct ne pourrait-elle pas
se faire via une saisie directement ds Base (un formulaire
supplémentaire à créer).
"
je souhaitais éviter le formulaire car on rentre dans un niveau
supplémentaire de difficulté pour le repreneur de la maintenance.




________________________________
De : Cleyr Listes <cleyr.listes@free.fr>
Envoyé : dimanche 25 août 2024 21:30
À : users@fr.libreoffice.org <users@fr.libreoffice.org>
Objet : Re: [fr-users] Calc : Ajout de formule automatiquement dans
nouvelle ligne

Bonjour
Je crains de ne pas visualiser aussi bien que Christian l'organisation
de vos données entre Calc et Base.

En se limitant aux cas d'usage lié aux cotisations
Quand est ce que Calc constitue "l'espace de modification"
Quand est-ce que Calc constitue "la source de données" dans Base ?

Ce que je crois comprendre c'est que " on se mord la queue" comme on
dit dans ce genre de situation .. est-ce juste ?

Dans la limite  où je ne suis vraiment pas sûre d'avoir compris : un
classeur intercalaire ne peut-il pas être utilisé ?
Vous faites vod saisies et votre calcul "en live" dans un 1er classeur.
Les seules colonnes/feuilles pertinentes pour les opérations dans Base
alimentent un second classeur (que vous définissez en odb, mais pas le
1er).

Dans votre souci de maintenabilite, ce classeur intercalaire se tient.
Sinon cette opération de validation en direct ne pourrait-elle pas se
faire via une saisie directement ds Base (un formulaire supplémentaire
à créer).

Bon courage

Claire



Le 25 août 2024 20:08:43 GMT+02:00, C Fourcroy <cfourcroy@free.fr> a
écrit :
Bonsoir,

A priori, je dirais que non, ce n'est pas possible, ce serait
contraire à la logique de ce qu'est un tableur.
Si l'on abandonne les macros, je ne vois qu'une solution : que la
saisie se fasse dans un formulaire et que la cotisation se calcule à se
niveau, par un champ calculé (basé le formulaire sur une requête SQL)
ou autre;

Bon courage et bonne chance

Christian

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 !

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

- à partir de ce fichier adhérents, production des différents sous
produits ou états : état financier des cotisations, liste des adhérents
de la section à destination du club, comparaison automatique des
données avec celles de la fédération nationale,

- développé sous libre office. Le .ods est également défini en .odb.
Des requêtes attachées à l'odb permettent d'extraire les données et
sont intégrées dans des onglets de l'ods (1 onglet = 1 sous produit

- aucune ligne de programmation ni de macro, ceci pour des raisons
de facilité de maintenance et de prévision de passage de relais vers
une personne maîtrisant les aspects bureautiques mais ne programmant
pas. Tout est basé sur des requêtes, des formules de calcul et des
manip simples pour l'utilisateur.

Actuellement, le calcul des cotisations se fait dans le sous produit
"état des cotisations" au moment où on le produit, c'est à dire quand
on s'ajuste avec la trésorerie. Je souhaiterai que ce calcul se fasse à
la saisie, ce qui permettrait de vérifier au fil de l'eau, que le
règlement de l'adhérent est identique au montant calculé.

Actuellement, la saisie se fait directement dans le .ods, sans
formulaire, avec une validation de données effectuée par la fonction
standard de calcul.
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.

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à ?
Merci par avance pour vos idées
Bien cordialement


--
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

Claire
--
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.