Fonctions base de données : définition des critères

Discussions à propos du tableur Calc.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Teofifil
Fraîchement OOthentifié
Messages : 6
Inscription : 10 mars 2006 20:47

Fonctions base de données : définition des critères

Message par Teofifil »

Bonjour,

Depuis le passage à Calc 3.2 je rencontre un souci sur une application développée (sous 2.0) principalement avec les fonctions BDSOMME, DBLIRE. Ces fonctions me retournent soit 0 ou #VALEUR.
Après étude du problème et comparaison avec des exemple qui fonctionne normalement il apparaît que l'erreur provient de l'utilisation d'une formule du style :

Code : Tout sélectionner

= mois(aujourdhui) voire =si(........)
qui renvoie bien une valeur pourtant. Jusqu'à 3.2 ce type de définition de critère fonctionnait parfaitement.

Petite précision je suis sous ubuntu 10.4.

Par avance merci de vos idées.
Dernière modification par Oukcha le 17 mai 2010 06:35, modifié 1 fois.
Raison : Titre corrigé, "pb" est implicite sur ce forum
OOo 2.01 sous Ubuntu Breezy
Avatar de l’utilisateur
gerard24
ManitOOu
ManitOOu
Messages : 3160
Inscription : 06 juil. 2008 17:08
Localisation : dans le Périgord

Re: Fonctions base de données : pb de définition des critère

Message par gerard24 »

Bonsoir,

Des formules ou fonctions qui retournent #VALEUR depuis le passage à la 3.2 alors qu'elles fonctionnaient auparavant.
Ceci est du à une nouveauté de cette version sur la reconnaissance des nombres. Voir le mail de J-B Faure à ce sujet.

La première chose à faire est de vérifier le format des données. Et le cas échéant de convertir les chaines de caractères en données numériques.

A+
OOodidacte
LibreOffice 6.4.5 sous Windows 10.
pour télécharger LibreOffice
Teofifil
Fraîchement OOthentifié
Messages : 6
Inscription : 10 mars 2006 20:47

Re: Fonctions base de données : définition des critères

Message par Teofifil »

Bonjour,
Ceci est du à une nouveauté de cette version sur la reconnaissance des nombres.
Et c'est bien là que réside le problème. Avec la nouvelle version ce n'est pas le résultat de la fonction qui est pris en compte mais le texte de la formule. Si je reprends mon exemple

Code : Tout sélectionner

=mois(aujourdhui())
ce que je souhaite c'est traité le résultat qui est 5 dans mon critère de recherche et non pas la formule même sous forme de texte. Cette nouveauté ne permet plus une utilisation intelligente des recherches de données à partir d'une table sous calc. Exemple tout bête si j'ai une liste de 1 à 12 et que je veuille récupérer le mois en texte, il me faudra créer 12 critères de recherche et non pas un seul avec la formule indiquée plus haut.
L'installation de CT2N ne résout en rien le problème. Si une solution n'est pas trouvé le seul moyen de résoudre ce problème est pour moi de revenir à la version antérieure voire de refaire le programme en C++ avec Qt4.
OOo 2.01 sous Ubuntu Breezy
Avatar de l’utilisateur
gerard24
ManitOOu
ManitOOu
Messages : 3160
Inscription : 06 juil. 2008 17:08
Localisation : dans le Périgord

Re: Fonctions base de données : définition des critères

Message par gerard24 »

Re,
ce n'est pas le résultat de la fonction qui est pris en compte mais le texte de la formule
:?:

Si tu expliquais clairement où se situe le problème.
Tu as ton fichier devant les yeux, moi pas.

Le problème est l'utilisation de formule dans la base (1), dans le critère de recherche (2) ?

(1)
bdsomme.jpg
(2)
bdsomme2.jpg
Un bout de fichier résumant le problème aiderait à le cerner.

A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
OOodidacte
LibreOffice 6.4.5 sous Windows 10.
pour télécharger LibreOffice
Avatar de l’utilisateur
Jean-Louis Cadeillan
GourOOu
GourOOu
Messages : 5753
Inscription : 02 janv. 2009 23:56

Re: Fonctions base de données : définition des critères

Message par Jean-Louis Cadeillan »

gerard24 a écrit :Si tu expliquais clairement où se situe le problème.[...]Un bout de fichier résumant le problème aiderait à le cerner.
+1
Exemple ci-joint
BdMoisValeur.ods
Je ne reproduis pas d'erreur #VALEUR! (BDSOMME() en G9, MOIS() en I2)
Cordialement
Jean-Louis
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibO 7.6.6.3 (x64 avec Java 1.8.0_411) et AOO 4.1.15 (avec Java x32 1.8.0_381), Windows 7 Édition Intégrale 64 SP1
Teofifil
Fraîchement OOthentifié
Messages : 6
Inscription : 10 mars 2006 20:47

Re: Fonctions base de données : définition des critères

Message par Teofifil »

Bonsoir,

Sorry pour avoir tardé à vous répondre.

Malheureusement je ne sais pas joindre un fichier comme l'a fait Jean-Louis. Donc on va faire avec :
- Cellule A1 mettre Mois Num
- Cellule B2 MoisNom
- de A2 à A13 1 ==> 12
- de B2 à B13 janvier ==> décembre
- En A15 mettre 5 c'est le critère de choix n°1
- En A17 mettre =mois(aujourdhui()) (normalement comme on est en mai le résultat est 5)
- Il va de soi qu'en A14 et B14 il faut mettre Mois Num et MoisNom ainsi qu'en A16 et A17

Maintenant si vous saisissez la formule

Code : Tout sélectionner

=BDLIRE(A1:B13;B1;A14:A15)
vous obtiendrez mai
par contre avec :

Code : Tout sélectionner

=BDLIRE(A1:B13;B1;A16:A17
vous aurez la surprise de voir apparaître #VALEUR

C'est un exemple simplicime mais quand vous utilisez dans une application nom pas un critère de choix mais 2 voire 3 et que vous multipliez l'utilisation des fonctions de base de données ce genre de petits incidents est pour le moins fort embêtant. D'autant que sous excel ce problème ne se pose pas (au moins dans la version 2003)
OOo 2.01 sous Ubuntu Breezy
Avatar de l’utilisateur
Jean-Louis Cadeillan
GourOOu
GourOOu
Messages : 5753
Inscription : 02 janv. 2009 23:56

Re: Fonctions base de données : définition des critères

Message par Jean-Louis Cadeillan »

Bonsoir
Quelques remarques :
  • J'ai recréé le fichier test selon tes indications,sauf :
  • Teofifil a écrit :qu'en A16 et A17
    A16 et B16, je suppose ?
  • Teofifil a écrit :Cellule B2 MoisNom
    Cellule B1 ?
  • rien n'y fait, dans mon environnement (domicile OOo 3.2 + XP SP2), je ne reproduis pas l'erreur #VALEUR!
    BdMoisValeur.ods
  • pour joindre un fichier voir la procédure ici
  • je ne comprends toujours pas sous quel environnement tu travailles (ta signature indique OOo 2 et Ubuntu Breezy, qui doit être vers la version 5...) alors que tu parles de la version OOo 3.2 : qu'en est-il exactement ? (d'autant plus que si tu viens de passer à la Lucid Lynx, de nombreux dysfonctionnements existent avec la version du dépôt, voir notamment ce fil)
Cordialement
Jean-Louis
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibO 7.6.6.3 (x64 avec Java 1.8.0_411) et AOO 4.1.15 (avec Java x32 1.8.0_381), Windows 7 Édition Intégrale 64 SP1
Teofifil
Fraîchement OOthentifié
Messages : 6
Inscription : 10 mars 2006 20:47

Re: Fonctions base de données : définition des critères

Message par Teofifil »

Bonjour,

Maintenant que je sais joindre un fichier cela devient plus facile. Tout se trouve dans les exemple de ce classeur (formule et erreurs). En fait les fonctions de base de données de calc m'étaient très utiles pour faire de la recherche ou des additions multicritères et de faire évoluer les critères tout au long de l'année et d'une année sur l'autre. L'analyse des formules permet de se rendre compte où se trouve le problème par contre je n'ai pas la solution et c'est la réponse que j'espère.

Quant à la version de OOo c'est bien la 3.2 et je suis sous ubuntu 10.4 (depuis breezy j'ai fait tous les updates :D ).
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
OOo 2.01 sous Ubuntu Breezy
Avatar de l’utilisateur
gerard24
ManitOOu
ManitOOu
Messages : 3160
Inscription : 06 juil. 2008 17:08
Localisation : dans le Périgord

Re: Fonctions base de données : définition des critères

Message par gerard24 »

Alors c'est bien un problème de la version Ubuntu. :(
Chez moi avec version officielle sous vista :
erreurBDSomme.jpg
OOo 2.01 sous Ubuntu Breezy
penses à mettre à jour ta signature.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
OOodidacte
LibreOffice 6.4.5 sous Windows 10.
pour télécharger LibreOffice
Avatar de l’utilisateur
Jean-Louis Cadeillan
GourOOu
GourOOu
Messages : 5753
Inscription : 02 janv. 2009 23:56

Re: Fonctions base de données : définition des critères

Message par Jean-Louis Cadeillan »

Pas non plus d'erreur sous XP...
Pour installer la version officielle d'OOo 3.2 sous Ubuntu, voir ce lien
Cordialement
Jean-Louis
LibO 7.6.6.3 (x64 avec Java 1.8.0_411) et AOO 4.1.15 (avec Java x32 1.8.0_381), Windows 7 Édition Intégrale 64 SP1
Avatar de l’utilisateur
OOotremer971
ManitOOu
ManitOOu
Messages : 2744
Inscription : 16 avr. 2010 13:31

Re: Fonctions base de données : définition des critères

Message par OOotremer971 »

Bonsoir,

Pas d'erreurs chez moi non plus sous Linux (OpenSuse) OOo 3.2 officielle

G.
En principe, toujours à jour des dernières versions dites stables
AOO
LibreOffice
Debian 10 et 11
Teofifil
Fraîchement OOthentifié
Messages : 6
Inscription : 10 mars 2006 20:47

Re: Fonctions base de données : définition des critères

Message par Teofifil »

Merci à tous,

C'était bien un problème de la version d'OOO installée lors de la mise à jour de ubuntu 10.4. J'ai suivi le modop proposé pour la réinstallation et le problème semble résolu.

Ce petit souci doit-il figurer comme un bug au niveau d'ubuntu ?
OOo 2.01 sous Ubuntu Breezy