Formule comme source de liste de validité

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.
Vandeput
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 409
Inscription : 12 févr. 2007 14:33
Localisation : Bruxelles

Formule comme source de liste de validité

Message par Vandeput »

Bonjour,

Une des difficultés que je rencontre lors de mon passage de MS Excel à OOo Calc est que ce dernier n'autorise pas une formule comme source de plage de cellules :

=SI($D$2="X";$A$2:$A$10;$B$2:$B$15)

Le but final étant, dans la formule, de faire appel à la fonction DECALER pour choisir la liste de validité à afficher.

J'emploie énormement cette procédure et cela me gêne beaucoup de ne pas la retrouver sous Calc.

Merci pour votre opinion.
andré
2.2 sous Windows XP
janjan
Membre hOOnoraire
Membre hOOnoraire
Messages : 115
Inscription : 21 nov. 2006 10:53

Message par janjan »

Peut être peux tu y arriver en mettant dans ta validité un lien vers une plage avec une fonction matricielle.
Exple :
Besoin :
{=Si(A1=1;b1:f1;b21;f2)};
Tu met cette fonction matricielle dans une cellule.
Dans ta liste de validité tu pointe vers la plage correspondant à la fonction.
Le tour est joué.

En espérant avoir bien compris ton pb.
OOo 3.1
Windows XP
Vandeput
Membre enthOOusiaste
Membre enthOOusiaste
Messages : 409
Inscription : 12 févr. 2007 14:33
Localisation : Bruxelles

Message par Vandeput »

Bonjour,

J'ai bien interprêté ta formule matricielle comme suit :
{=SI(A1=1;B1:F1;B2:F2)}

Cela me donne effectivement une plage à laquelle je puis faire référence dans la liste de validité.

Mais sous Excel je ne suis pas obligé de passer par une plage intermédiaire, je peux mettre la formule (non matricielle) directement dans la source de la liste de validation.

De plus, sous Excel, dans la formule, je puis faire appel à la fonction DECALER qui me permet de limiter la liste aux valeurs existantes et ne pas avoir une série de cellules vides en fin de liste.

Mais le problème est plus grave, comment modifier tout cela lorsque j'ouvre un fichier Excel existant avec OOo ?
Je ne me vois pas modifier l'ensemble de toutes ces listes de validité à la main !

Merci quand même de l'aide apportée, c'est déjà un bon début.
andré
2.2 sous Windows XP