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, "[email protected]" 
<[email protected]> 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 <[email protected]>
>Envoyé : dimanche 25 août 2024 21:30
>À : [email protected] <[email protected]>
>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 <[email protected]> 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, [email protected] 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 à [email protected] 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 à [email protected] 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 à [email protected] 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 à [email protected] pour vous désinscrire
Les archives de la liste sont disponibles à 
https://listarchives.libreoffice.org/fr/users/
Privacy Policy: https://www.documentfoundation.org/privacy

Répondre à