Le dimanche 27 Mars 2005 09:55, Marie jo KOPP CASTINEL a écrit :
> Bonjour,
>
Bonsoir, Marie Jo

> Comme toujours, Christian a apporté une solution qui fonctionne ;-)

Exact, comme toujours...

> Mais je souhaiterais apporter quelques précisions au problème de base.

Merci, c'est gentil d'éclairer ma lanterne.

> >>>En b42, j'ai cette formule : =SOUS.TOTAL (3;B7:B37)
> >>>en b43                             : =SOMME(B7:B37)
> >>>en b44                             : =B43/B42
> >>>
> >>>Ça fonctionne très bien dès que j'ai une valeur dans une des cellules b7
> >>> à b37.
> >>>Mais quand elles sont toutes vides, en b44, j'ai ce message "#valeur !"
>
> Le message #valeur indique généralement qu'une partie des cellules ou
> une seule contient du texte et non un nombre à calculer.
> Je pense donc qu'au départ, c'est ta fonction Sous.total qui renvoie un
> texte car Calc ignore les cellules texte dans ses calculs de base (comme
> la somme)

Non, la cellule b42 est formatée en nombre, et renvoie un zéro quand il n'y a 
aucune valeur dans la plage b7:b37

> > Cela ne semble fonctionner que pour une cellule, et pas pour une plage :
> > = ESTVIDE (B7)                      réponse : VRAI
> > = ESTVIDE (B7:B37)          réponse : FAUX (alors qu'aucune cellule ne 
> > contient
> > quelque chose)
>
> Une fonction est composée d'un nom et d'arguments, entre parenthèse. La
> fonction ESTVIDE() attend un argument de type référence d'une seule
> cellule. Lance l'aide qui t'explique bien ceci.

Effectivement, ceci explique le résultat FAUX.
>
> La fonction ESTVIDE() teste si une cellule est vide. Elle peut contenir
> une formule de calcul qui ne renvoie rien mais alors elle n'est plus vide.
> Elle n'est pas à confondre avec le teste d'une cellule égale à 0.
>
Dans le cas présent, il s'agit de cellules (b7:b37) qui sont réellement vides, 
sans formules.

> > Et si je rajoute SI (même en mettant une seule cellule en référence) :
> > =SI(ESTVIDE(B7); rien; =B43/B42 )  réponse : #NOM ?
> >
> > J'ai fait divers essais en examinant les exemples que tu donnes sur ton
> > site, ainsi que l'aide de OOo sur SI et ESTVIDE, mais je ne comprends pas
> > quel est le NOM qu'il me réclame.
>
> Le message d'erreur #Nom indique l'utilisation d'une cellule ou zone
> nommée inexistante. En effet, en écrivant le mot rien dans ta fonction
> SI sans le mettre entre guillemets, Calc cherche une cellule qui
> s'appelerait Rien. Il faut toujours écrire le texte entre guillement
> dans des fonctions de calcul.

=SI(ESTVIDE(B7); "rien"; =B43/B42 )
me répond : Err 510

Même chose si je nomme la cellule b7 "rien", même en supprimant les guillemets 
dans la formule.

-- 
Joël

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Répondre à