Trouver une valeur dans une plage fluctuante
Résolu
fofi
-
fofi -
fofi -
Bonjour à tous et toutes,
Un gros coup de main est demandé car j'avoue bloquer:
Dans ma colonne B, j'ai des n° de centres (de 1 à 12) sachant que plusieurs lignes peuvent avoir le même n°.
Dans ma colonne AG: j'ai des dates.
... et tout ce que je souhaite est calculer la plus petite date pour chaque centre (sachant que le classeur va se compléter sur 2 ans et sans avoir à rentrer les plages manuellement).
Pour ce faire, j'ai essayé (pour la 36ème tentative de dire à excel): je veux la plus petite valeur dans la plage pour laquelle le centre = 1 :
=INDEX((B2:B772;AG2:AG772);PETITE.VALEUR(EQUIV(1;B2:B772;0);1);2)
bé ça n'a pas marché... une 37ème fois...
snif
Sophie
Un gros coup de main est demandé car j'avoue bloquer:
Dans ma colonne B, j'ai des n° de centres (de 1 à 12) sachant que plusieurs lignes peuvent avoir le même n°.
Dans ma colonne AG: j'ai des dates.
... et tout ce que je souhaite est calculer la plus petite date pour chaque centre (sachant que le classeur va se compléter sur 2 ans et sans avoir à rentrer les plages manuellement).
Pour ce faire, j'ai essayé (pour la 36ème tentative de dire à excel): je veux la plus petite valeur dans la plage pour laquelle le centre = 1 :
=INDEX((B2:B772;AG2:AG772);PETITE.VALEUR(EQUIV(1;B2:B772;0);1);2)
bé ça n'a pas marché... une 37ème fois...
snif
Sophie
A voir également:
- Trouver une valeur dans une plage fluctuante
- Trouver adresse mac - Guide
- Trouver une adresse - Guide
- Trouver une notice - Guide
- Comment trouver le mot de passe wifi sur son téléphone - Guide
- Trouver un nom avec une adresse ✓ - Forum Réseaux sociaux
4 réponses
Bonjour
Exemple à adapter à ton besoin
centre cherché en D2
centres en colonne A
date en colonne B
à mettre au format date
Formule matricielle à valider par « ctrl+maj+entrée » (et non directement par « entrée »), le curseur clignotant dans la barre de formule
Michel
Exemple à adapter à ton besoin
centre cherché en D2
centres en colonne A
date en colonne B
=MIN(SI(A2:A13=D2;B2:B13))
à mettre au format date
Formule matricielle à valider par « ctrl+maj+entrée » (et non directement par « entrée »), le curseur clignotant dans la barre de formule
Michel
Bonjour Vaucluse,
après essai, cela me donne #valeur
par rapport à votre remaque, toutes mes cellules de la colonne AF (selection) sont remplies. En fonction de ce qu'il y a avant, si les sujets enregistrés dans les centres sont ensuite codés 0 ou 1, apparaîtra "selectionné(e)" dans ma colonne AF; sinon "non select". Les trous n'existeront que dans ma colonne AG (date d'inclusion) pour laquelle aucune date ne sera en face des "non select"...
après essai, cela me donne #valeur
par rapport à votre remaque, toutes mes cellules de la colonne AF (selection) sont remplies. En fonction de ce qu'il y a avant, si les sujets enregistrés dans les centres sont ensuite codés 0 ou 1, apparaîtra "selectionné(e)" dans ma colonne AF; sinon "non select". Les trous n'existeront que dans ma colonne AG (date d'inclusion) pour laquelle aucune date ne sera en face des "non select"...
..."Comme tous les inscrits dans les colonnes B ne seront pas forcément "inclus" dans mon étude, il y a donc quelques cellules de dates d'inclusion qui sont vides "...
Hé bin voila !!!! comme tu as des cellules vides dans les dates, la date mini est donc 0
essaies
La prochaine fois que tu demandes de l'aide,sois précis dans ta demande sans rien oublier (vides, autres feuilles etc) :o)
Pour ta formule Vaucluse, je ne vois pas le "nb.si(zone;0)" car si on a plusieurs 0 (vide?)...on va avoir 2,3,5... mais...
Michel
Hé bin voila !!!! comme tu as des cellules vides dans les dates, la date mini est donc 0
essaies
MIN(SI((A1:A50=D2)*(B1:B50<>"");B1:B50))
La prochaine fois que tu demandes de l'aide,sois précis dans ta demande sans rien oublier (vides, autres feuilles etc) :o)
Pour ta formule Vaucluse, je ne vois pas le "nb.si(zone;0)" car si on a plusieurs 0 (vide?)...on va avoir 2,3,5... mais...
Michel
Re Michel:
Le NB.SI(Zone;0)+1 ou NB.SI(Zone;"")+1 permet de définir le rang de PETITE.VALEUR tout de suite après le nombre de 0, c'est à dire le mini supérieur à 0 de la liste de nombre... Mais ça, pas dans le matriciel à priori.
en version simple, ça remplace à mon avis avantageusement MIN pour éviter d'afficher les valeurs 0, (déjà utilisé, ça marche)
Crdlmnt
Le NB.SI(Zone;0)+1 ou NB.SI(Zone;"")+1 permet de définir le rang de PETITE.VALEUR tout de suite après le nombre de 0, c'est à dire le mini supérieur à 0 de la liste de nombre... Mais ça, pas dans le matriciel à priori.
en version simple, ça remplace à mon avis avantageusement MIN pour éviter d'afficher les valeurs 0, (déjà utilisé, ça marche)
Crdlmnt
alors on attendra vendredi Michel,, car je n'arrive pas à mettre ce code en matricielle.
(je comptais sur toi,comme souvent)
bonne journée demain
pour fofi:
j'ai bien dit que ma proposition ne pouvait pas marcher en matricielle, du moins en l'état où je rentre la formule, et je ne trouve pas le libellé correct.
crdlmnt
(je comptais sur toi,comme souvent)
bonne journée demain
pour fofi:
j'ai bien dit que ma proposition ne pouvait pas marcher en matricielle, du moins en l'état où je rentre la formule, et je ne trouve pas le libellé correct.
crdlmnt
Bonjour tout le monde,
La proposition de michel du post 8 devrait marcher (dans la mesure où le centre existe), je suis arrivé à la même :
=MIN(SI((ENR!B1:B50=A1*(ENR!AG1:AG50>0));ENR!AG1:AG50))
matricielle à valider par shift+ctrl+entrée
http://www.cijoint.fr/cjlink.php?file=cj201104/cij5wezonG.xls
eric
La proposition de michel du post 8 devrait marcher (dans la mesure où le centre existe), je suis arrivé à la même :
=MIN(SI((ENR!B1:B50=A1*(ENR!AG1:AG50>0));ENR!AG1:AG50))
matricielle à valider par shift+ctrl+entrée
http://www.cijoint.fr/cjlink.php?file=cj201104/cij5wezonG.xls
eric
eriiiiiic!!
ça maaarche !!!
j'ai juste dû corriger ta formule car il y avait un petit bug de parenthèses:
=MIN(SI((ENR!B1:B50=A1)*(ENR!AG1:AG50>0);ENR!AG1:AG50))
Tjs aussi la même correction que pour Michel: tout comme je ne pouvais pas mettre D2 (dans son équation), je ne pouvais pas mettre A1 dans la tienne mais juste 1, 2, 3... jusqu'à mon 12e centre car les lignes ne commenceront pas forcément au même endroit...
mais merci merci merci merci à tous !!
Sophie
ça maaarche !!!
j'ai juste dû corriger ta formule car il y avait un petit bug de parenthèses:
=MIN(SI((ENR!B1:B50=A1)*(ENR!AG1:AG50>0);ENR!AG1:AG50))
Tjs aussi la même correction que pour Michel: tout comme je ne pouvais pas mettre D2 (dans son équation), je ne pouvais pas mettre A1 dans la tienne mais juste 1, 2, 3... jusqu'à mon 12e centre car les lignes ne commenceront pas forcément au même endroit...
mais merci merci merci merci à tous !!
Sophie
J'aboutis au moins à une date mais il m'affiche celle du 1er janv 1900...
démonstration de ma formule
https://www.cjoint.com/?3egli4nCgXh
mon pc de bureau n'accepte pas d'ouvrir ton fichier.
Il se pourrait que ça ne marche pas chez moi car ma configuration de tableau est différente.
La cellule où je voudrais faire apparaître les dates est dans une autre feuille que la plage de référence (feuille ENR!)
J'ai essayé ta formule:
MIN(SI(ENR!B2:B772=1);ENR!AG2:AG772)) avec ctrl+ maj+ entrée => rep 1er janv 1900
n° des centres colonne dates
Comme tous les inscrits dans les colonnes B ne seront pas forcément "inclus" dans mon étude, il y a donc quelques cellules de dates d'inclusion qui sont vides (puisque gens pas inclus mais enregistrés quand même)... donc j'ai pensé que les cellules vides étaient peut-être interprétées comme la date 1er janv 1900, donc j'ai ajouté à ta formule la condition d'être "selectionné(e)":
MIN(SI(ET(ENR!B2:B772=2;ENR!AF2:AF772="selectionné(e)");ENR!AG2:AG772))
mais ça me donne tjs le 1er janv 1900.
La "seule" différence que je vois avec ta formule est que compte tenu de la disposition de mes différentes colonnes, feuilles, etc, je n'ai pas pu écrire ton D2 est ai donc mis 1 pour le centre 1, ou 2, pour le 2, etc... mais toutes les formules me donnent le 1er janv 1900
cette formule me titille sérieusement...
si vous avez des valeurs nulles en ligne avec le code cherchée, la formule MIN renvoi le 0. Je me tortille l'esprit pour trouver une formule matricielle basée sur:
=PETITE.VALEUR(B2:B11;NB.SI(B2:B11;0)+1))
qui renvoie bien la dernière valeur du champ, mais qui ne fonctionne pas à priori lorsqu'on associe la condition SI en matricielle?
qu'en penses tu Michel?
crdlmnt