[Résolu] rechercher une cellule en fonction d'un critère

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.
peric
Fraîchement OOthentifié
Messages : 7
Inscription : 06 oct. 2010 19:20

[Résolu] rechercher une cellule en fonction d'un critère

Message par peric »

Bonsoir à tous,
je cherche comment "repérer" une cellule :
j'ai 12 colonnes (une par mois) au bas de ces colonnes je fais la somme (recette et dépense). au fur et à mesure des mois ces sommes se remplissent, je voudrais utiliser la dernière somme pour un autre calcul. c'est donc ma première valeur non égale à 0 en partant de la droite. Comment exprimer cela dans une fonction?

janvier février mars avril mai
200€ -150€ 600€ 0,00€ 0,00€

Merci
Dernière modification par micmac le 07 oct. 2010 18:15, modifié 1 fois.
Raison : [Résolu] et la coche. La prochaine fois faites-le vous-même.
OpenOffice3.2 sous ubuntu 10.4
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
Messages : 10071
Inscription : 28 août 2010 08:45

Re: rechercher une cellule en fonction d'un critère

Message par micmac »

Bonjour et bienvenue,

un exemple de fichier avec notre service Ci-Joint serait le bienvenu (lien en bas de la page lors de la rédaction du message) : http://user.services.openoffice.org/fr/ ... ne-PJ.html

Dans l'attente.
Touche Ctrl de Windows = touche cmd⌘ sur Mac
OpenOffice > Outils > Options sur Windows = OpenOffice > Préférences sur macOS
peric
Fraîchement OOthentifié
Messages : 7
Inscription : 06 oct. 2010 19:20

Re: rechercher une cellule en fonction d'un critère

Message par peric »

Merci,
dans la feuille 2010, je veux utiliser la dernière cellule non égale à 0 de ma ligne solde CME fin de mois (la première en partant de la droite) sachant que chaque mois cette cellule va changer. Cette valeur je l'utilise en q52.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
OpenOffice3.2 sous ubuntu 10.4
Avatar de l’utilisateur
gerard24
ManitOOu
ManitOOu
Messages : 3160
Inscription : 06 juil. 2008 17:08
Localisation : dans le Périgord

Re: rechercher une cellule en fonction d'un critère

Message par gerard24 »

Bonsoir,

Avec la formule matricielle suivante :

Code : Tout sélectionner

=INDEX($A$50:$N$50;MAX(($B$50:$N$50<>0)*COLONNE($B$50:$N$50)))
Cette formule est ç valider par ctrl+maj+entrée.

A+
OOodidacte
LibreOffice 6.4.5 sous Windows 10.
pour télécharger LibreOffice
jjk
HédOOniste
HédOOniste
Messages : 1696
Inscription : 27 oct. 2008 14:30

Re: rechercher une cellule en fonction d'un critère

Message par jjk »

Bravo Gérard
A partir de ta formule on peut bien sûr proposer une autre formule matricielle plus longue et moins élégante :(

Code : Tout sélectionner

=DECALER($A$50:$G$50;0;MAX(($A$50:$G$50<>0)*COLONNE($A$50:$G$50))-1)
Un peu d'explication sur ta formule :
(($B$50:$N$50<>0)*COLONNE($B$50:$N$50)) renvoie 1*n°colonne si la cellule est non nulle, zéro sinon, dans la plage B:N
Le MAX() renverra donc finalement le n° de la dernière colonne de cellule non nulle.
et INDEX($Ax:$Gx;MAX()) renvoie la valeur de cette cellule puisque la plage commence à la colonne de n°égal à 1.
OpenOffice 3.1.1 sous XP-SP2 et LibreOffice 3.5.0 sous Win 7
peric
Fraîchement OOthentifié
Messages : 7
Inscription : 06 oct. 2010 19:20

Re: rechercher une cellule en fonction d'un critère

Message par peric »

Bonsoir,
peux-tu expliquer le ctrl+Maj+entrée
pour le moment le résultat est 0!
OpenOffice3.2 sous ubuntu 10.4
Avatar de l’utilisateur
gerard24
ManitOOu
ManitOOu
Messages : 3160
Inscription : 06 juil. 2008 17:08
Localisation : dans le Périgord

Re: rechercher une cellule en fonction d'un critère

Message par gerard24 »

Si tu as 0, c'est que la validation matricielle n'a pas fonctionné.

Tu saisis la formule dans la barre de formule et à la place de entrée, tu appuies simultanément sur les touches ctrl et maj
et tout en maintenant ces touches enfoncées tu fait entrée.

Si tu copie/colle la formule, colles la dans la barre de formule (et non dans la cellule) avant de valider comme précédemment.

Si ta formule est déjà saisie et validée par entrée (ce qui semble être ton cas), cliques dans la barre de formule,
supprimes un caractère quelconque ( par exemple le = ou la dernière parenthèse) et ressaisis le, valides comme indiqué.
 Ajout : encore + simple si la formule est déjà saisie :
Clic dans la cellule, puis sur l'icone f(x) devant la barre de formule et dans l'assistant de fonction : coches la case matrice en bas à gauche. 
Pour savoir si ta formule est bien matricielle, regardes dans la barre de formule, elle doit être entre accolades comme ceci :
{=ta formule}

A+
Dernière modification par gerard24 le 06 oct. 2010 21:11, modifié 1 fois.
OOodidacte
LibreOffice 6.4.5 sous Windows 10.
pour télécharger LibreOffice
jjk
HédOOniste
HédOOniste
Messages : 1696
Inscription : 27 oct. 2008 14:30

Re: rechercher une cellule en fonction d'un critère

Message par jjk »

Il faut valider la formule par les 3 touches Ctrl+Maj+Entrée à la fois, puisqu'il s'agit d'une formule matricielle :
tu tapes =INDEX(...) et au lieu de faire Entrée seulement tu fais Ctrl+Maj+Entrée.
Tu peux aussi cocher la case "Matrice" dans l'Assistant fonction.
Celle-ci apparaîtra dans la barre de formules entourée par des accolades {=INDEX(...)}. C'est normal, c'est l'apanage des formules matricielles.
OpenOffice 3.1.1 sous XP-SP2 et LibreOffice 3.5.0 sous Win 7
peric
Fraîchement OOthentifié
Messages : 7
Inscription : 06 oct. 2010 19:20

Re: rechercher une cellule en fonction d'un critère

Message par peric »

bonsoir,
merci pour les explications amis ça ne marche pas!
j'ai modifié la plage parce que mes nombres commence à la colonne C:
=DECALER($C$50:$N$50;0;MAX(($C$50:$N$50<>0)*COLONNE($C$50:$N$50))-1)

j'ai appuyé sur CTRL+MAJ+entrée cela OK mais j'ai toujours unrésultat égal à zéro?

merci de me suivre...
OpenOffice3.2 sous ubuntu 10.4
Avatar de l’utilisateur
gerard24
ManitOOu
ManitOOu
Messages : 3160
Inscription : 06 juil. 2008 17:08
Localisation : dans le Périgord

Re: rechercher une cellule en fonction d'un critère

Message par gerard24 »

Si tu démarres en colonne C, remplaces le -1 par -3 (la colonne C est la 3ème colonne de la feuille).

A+
OOodidacte
LibreOffice 6.4.5 sous Windows 10.
pour télécharger LibreOffice
peric
Fraîchement OOthentifié
Messages : 7
Inscription : 06 oct. 2010 19:20

Re: rechercher une cellule en fonction d'un critère

Message par peric »

Aîe, Aïe
je ne peux plus entrer dans la barre de formule?
OpenOffice3.2 sous ubuntu 10.4
Avatar de l’utilisateur
gerard24
ManitOOu
ManitOOu
Messages : 3160
Inscription : 06 juil. 2008 17:08
Localisation : dans le Périgord

Re: rechercher une cellule en fonction d'un critère

Message par gerard24 »

peric a écrit :Aîe, Aïe
je ne peux plus entrer dans la barre de formule?
C'est à dire ? As-tu un message ?

Si tu as le message "impossible de modifier uniquement une partie de la matrice", c'est que la matrice est sur plusieurs cellules.
Fais ctrl+/ (/ du pavé numérique) pour sélectionner la plage de matrice et supprimes tout et recommence.
Normalement ma formule doit renvoyer un résultat unique, pas une plage.
OOodidacte
LibreOffice 6.4.5 sous Windows 10.
pour télécharger LibreOffice
peric
Fraîchement OOthentifié
Messages : 7
Inscription : 06 oct. 2010 19:20

Re: rechercher une cellule en fonction d'un critère

Message par peric »

Merci pour ton assiduité
Là cela marche sauf que la formule semble aussi se reporter sur les 8 cellules à droite, j'ai fait un essai en O60. Faut-il copier la formule dans une cellule précise?
Merci
OpenOffice3.2 sous ubuntu 10.4
peric
Fraîchement OOthentifié
Messages : 7
Inscription : 06 oct. 2010 19:20

Re: rechercher une cellule en fonction d'un critère

Message par peric »

Avec la première formle ça marche! Merci pour vos aides
Comment fait-on pour clore le sujet?
OpenOffice3.2 sous ubuntu 10.4
Avatar de l’utilisateur
Jean-Louis Cadeillan
GourOOu
GourOOu
Messages : 6090
Inscription : 02 janv. 2009 23:56

Re: rechercher une cellule en fonction d'un critère

Message par Jean-Louis Cadeillan »

Une variante (à mettre en O50, toujours matricielle) :

Code : Tout sélectionner

{=INDEX($C$50:$N$50;EQUIV(1;SI(($C$50:$N$50>0)*(DECALER($C$50:$N$50;0;1)=0);1;0);0))}
A+
Jean-Louis
Windows 10 Pro 64, LibO 25.8.6.2 (JRE 1.8.0_481) et AOO 4.1.16 (Adoptium 19.0.2.7)
Avatar de l’utilisateur
tintin
Grand Maître de l'OOffice
Grand Maître de l'OOffice
Messages : 10181
Inscription : 18 juil. 2008 15:29
Localisation : F-Oise

Re: rechercher une cellule en fonction d'un critère

Message par tintin »

Comment fait-on pour clore le sujet?
Bonjour,

Quand votre question a trouvé une solution, il faut ajouter dans le titre du premier message la balise [Résolu].

Merci de respecter la syntaxe [Résolu] : entre crochets, avec un R majuscule et un é. Cette balise est à placer au début du titre. Il faut également cocher la case de l'icône de sujet Image.

Suivez ce sujet pour savoir comment procéder : http://user.services.openoffice.org/fr/ ... c3299.html

Merci de votre collaboration.
AOO 4.1.16 et LibO 25.8.5 / macOS M4 Silicon 26.4 Tahoe
Adoptium-temurinJDK-1.8.0.482 / Firefox/Safari/Thunderbird /Time Machine + clone
Tutoriels du forum pour macOS
Pour sauvegarder vos documents c'est ceinture ET bretelles