Page 1 sur 1

Valider une formule matricielle

Publié : 15 avr. 2007 18:05
par Vandeput
Bonsoir,

Lorsque je valide une formule par Ctrl+Maj+Entrée, les {} ne se placent pas toujours automatiquement.
Par contre, lorsque je passe par l'Assistant Fonctions et que je coche "matrice" dans le coin inférieur gauche de la fenêtre, la formule se met bien en matricielle (les {} ne deviennent visibles qu'après avoir sélectionné une autre cellule).

Lorsque je modifie la formule je suis obligé de recocher "matrice".
Lorsque je nomme une formule matricielle (menu Insertion / Noms / Définir) je dois valider ce nom en cochant "matrice".
Et enfin lorsque j'imbrique une formule matricielle dans une formule normale, la case à cocher "matrice" n'est pas accessible et la formule ne fonctionne donc pas.

Il y a-t-il une solution à ces divers problèmes, l'aide n'aborde pas le sujet et diverses recherches sur la toile n'ont donné aucun résultat.

Merci d'avance et bonne fin de weekend.

Publié : 15 avr. 2007 18:11
par jeanmimi
Bonjour,

Dans ce forum, Jeff a donné pas mal d'exemples.
Il y en a d'autres aussi sur le site de Christian :
http://christianwtd.free.fr/engine.php? ... =matriciel
Et moi, je ne connais pas bien (comme l'Aide ?)

Publié : 16 avr. 2007 05:56
par Vandeput
Bonjour,

Merci de m'avoir répondu, mais je n'ai toujours pas trouvé de solution à mon problème.
Jeff m'a déjà signalé, sur un autre post, qu'il n'en avait pas non plus.

Il ne me reste donc qu'à chercher, avec l'espoir de trouver quelqu'un qui pourra m'aider.

Si je trouve, je vous tiens évidemment au courant.

Re: Valider une formule matricielle

Publié : 16 avr. 2007 06:22
par Jeff
Bonjour vous deux,
Vandeput a écrit :Lorsque je valide une formule par Ctrl+Maj+Entrée, les {} ne se placent pas toujours automatiquement.
Et pourtant, elles devraient ; le comportement est le même que lorsque tu coche Matrice dans l'assistant : les accolades apparaissent lorsque tu quitte puis reviens sur la cellule.
Vandeput a écrit :Lorsque je modifie la formule je suis obligé de recocher "matrice".
Comme lorsque tu modifie une formule tu peux modifier son caractère matriciel, c'est tout à fait normal.
Vandeput a écrit :Et enfin lorsque j'imbrique une formule matricielle dans une formule normale, la case à cocher "matrice" n'est pas accessible et la formule ne fonctionne donc pas.
Il me semble avoir vu une issue là dessus mais je n'arrive pas à remettre la main dessus :?

Publié : 16 avr. 2007 07:12
par Vandeput
Rebonjour,

Merci de l'attention que vous portez à mon problème.

Un petit exemple détaillé avec une petite explication est toujours plus aisé.

http://user.services.openoffice.org/fr/ ... 091100.lle

(je suis absent jusqu'en début d'après-midi)

Publié : 16 avr. 2007 16:56
par Jeff
Bonsoir,

Désolé pour le contre-temps, je travaille pas mal en extérieur ces temps-ci...

Pour ceux qui serait étonné de l'extension .lle, il faut ouvrir directement sous OOo (Fichier->Ouvrir...->fichier.lle) :roll:

Je me souviens plus du comportement d'Excel, mais sous Calc, tu ne peux pas prendre une formule déjà faite puis la valider par Ctrl+Maj+Entrer directement :(
Le plus simple est de re-saisir un paramètre (par exemple la dernière parenthèse) puis de valider matriciellement à ce moment là.

A +

Publié : 17 avr. 2007 06:59
par Vandeput
Bonjour Jeff,

Je ne comprends pas exactement ce que tu entends par :
sous Calc, tu ne peux pas prendre une formule déjà faite puis la valider par Ctrl+Maj+Entrer directement
et par :
re-saisir un paramètre puis de valider matriciellement

Pour rappel, sous Excel, tu tapes une formule complète (ou tu la copies et tu la colles) puis tu la valides par Ctrl+Maj+Entrée.
Cela fonctionne.
Exemple : tu copies le petit tableau de ma pièce jointe (B4:B14), tu le colles sous Excel, tu copies la formule en D12, tu la colles en D12 (sous Excel) et tu la valides en matricielle.
Cela fonctionne.

Si cela n'est pas possible sous Calc, et qu'il n'existe pas d'autre méthode pour arriver au même résultat, il faut en déduire que, pour ce cas précis, Calc est bien moins performant qu'Excel.

Quand je resaisis la formule en D4 (au même emplacement ou autre part), il ne m'est pas possible de la valider en matricielle, sauf en passant par l'Assistant Fonctions.
Pour la formule en D12, je crains fort qu'il n'y ait pas de solution sous Calc.

Je m'étais dit qu'il était peut-être possible de formater (Style) une cellule en matricielle, mais je n'y suis pas parvenu.

Il serait dommage que je sois forcé, uniquement pour cette raison, de me rediriger vers Excel pour finaliser les programmes que je suis en train d'élaborer.

Merci quand même pour tes explications, de mon côté je vais essayer de résoudre mon problème en non-matricielle, mais ce n'est pas évident.

Publié : 17 avr. 2007 17:45
par Jeff
Re...

Je précise (puisque j'arrive à valider tes fonctions matriciellement) :

- si tu saisi une formule puis la valide par Ctrl+Maj+Entrer -> normalement pas de problème.

- si tu sélectionne une cellule comportant déjà une fonction non-matricielle, et que tu valide par le même procédé, rien ne change ; il faut re-saisir un paramètre de cette fonction (par exemple tu sélectionne dans la barre de formule le signe = et tu retape =) puis valider par Ctrl+Maj+Entrer pour valider en matricielle (comme si tu fais une modification).

Une fois ta fonction avec son caractère matriciel, sous Calc, il vaut mieux employer Ctrl+C pour copier et Ctrl+V pour coller.

Publié : 18 avr. 2007 09:57
par Vandeput
Re,

L'astuce d'effacer le signe =, de le retaper puis de valider en matriceille fonctionne.
Mais pas plus rapide que de passer par l'Assistant Fonctions.
Pourquoi faire comliqué alors que d'autres le font plus simplement ?

Cela ne fonctionne toutefois pas pour la formule en D12 (mon exemple joint sous le 1er post).

Comment sous Calc peut-on nommer des formules matricielles ?
J'obtiens un résultat correct en validant le nom en matricielle, mais existe-t-il une autre méthode ?

C'est vraiment laborieux.
Heureusement que je puis profiter de tes bons conseils, merci.