Généralités sur les calculs dans Calc

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.

Généralités sur les calculs dans Calc

Messagepar sisyphi » 10 Mars 2006 22:37

Salut,

En testant la fonction avancée CNUM (qui permet de convertir le contenu d'une cellule formatée texte en nombre), je me suis aperçu d'un comportement étrange lors d'un calcul entre une cellule contenant une valeur "nombre" et une autre contenant une valeur "texte". Par exemple :

- j'ai entré en A1 la valeur texte suivante : toto
- j'ai ensuite effectué sur d'autres cellules les opérations de base suivantes, dont voici les résultats :

1/Addition
=toto+2 la valeur renvoyée est #NOM ?
=A1+2 la valeur renvoyée est 2

2/Soustraction
=toto-2 la valeur renvoyée est #NOM ?
=A1-2 la valeur renvoyée est -2

3/Division
=toto/2 la valeur renvoyée est #NOM ?
=A1/2 la valeur renvoyée est 0
=2/A1 la valeur renvoyée est Err :503

2/Multiplication
=toto*2 la valeur renvoyée est #NOM ?
=A1*2 la valeur renvoyée est 0

En conclusion, la valeur texte est assimilé à 0 en calcul. Ce comportement peut s'avèrer très trompeur. Le renvoi d'une valeur d'erreur permettant justement de détecter un problème de cohérence dans la formule.

Est-ce un problème de paramètrage Calc ou autre chose?

Merci de votre contribution

PS : Excel renvoit #NOM pour toto*2 et #VALEUR pour A1*2 (A1 étant valorisé avec toto)
OOo 2.0.1 Windows Me
sisyphi
NOOuvel adepte
NOOuvel adepte
 
Message(s) : 17
Inscrit le : 09 Fév 2006 19:57

Messagepar bm92 » 11 Mars 2006 10:17

=toto+2 la valeur renvoyée est #NOM ?

Normal, car Calc ne connait pas la signification de toto.
Si tu nommes toto la cellule B3 alors cette formule utilisera le contenu de B3.
Excel renvoit #NOM pour toto*2 et #VALEUR pour A1*2 (A1 étant valorisé avec toto)

Calc n'est pas encore un clone d'Excel, contrairement à ce que certains souhaitent...
bm92
ManitOOu
ManitOOu
 
Message(s) : 2562
Inscrit le : 26 Nov 2005 14:42

Messagepar sisyphi » 11 Mars 2006 21:39

Normal, car Calc ne connait pas la signification de toto.

Si tu nommes toto la cellule B3 alors cette formule utilisera le contenu de B3.


Il n'est pas question ici de nommer une cellule "toto" mais de lui affecter une valeur texte comme il est écrit :

- j'ai entré en A1 la valeur texte suivante : toto


Le problème est que Calc permet de mélanger dans les calculs des valeurs texte et nombre :

Si A1=3 et A2=Ooffice

La somme de A1+A2=3

La valeur texte de A2 est assimilée par Calc à une valeur numérique de 0.
OOo 2.0.1 Windows Me
sisyphi
NOOuvel adepte
NOOuvel adepte
 
Message(s) : 17
Inscrit le : 09 Fév 2006 19:57

Messagepar Gaillette » 13 Mars 2006 15:58

Ben oui, je vois pas vraiment où est le problème.

CNUM sert à transformer le format de cellule texte en nombre pour permettre un calcul.
En général, on sait si on a dans la cellule du texte ou des nombres. Au pire , en cas de doute, on peut toujours tester si la valeur de la cellule est nulle pour forcer un "0" dans la cellule , voire un blanc.
Il est d'ailleurs fortement conseillé d'utiliser la gestion d'erreur pour tester le contenu des cellules afin d'éviter les affichages genre "#NOM".
Personnellement, pour avoir fait de nombreux tableaux sous Excel (dans l'ancien temps, evidemment :wink: ), je prévois toujours un message d'erreur s'il y a un risque, j'aime pas les #machins....

:lol:
Il n'y a point de soleil pour les aveugles, ni de tonnerre pour les sourds,
S'ils ne veulent pas croire les autres.
OOo 2.3.1 sous Kubuntu et encore un peu Win XP SP2
Gaillette
NOOuvel adepte
NOOuvel adepte
 
Message(s) : 16
Inscrit le : 23 Jan 2006 10:03


Retour vers Tableur

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 4 invité(s)