Rechercher la valeur la plus proche dans une ligne d'un tableau
Résolu/Fermé
Deathsite
Messages postés
18
Date d'inscription
mercredi 27 octobre 2010
Statut
Membre
Dernière intervention
22 janvier 2013
-
18 janv. 2013 à 17:34
Deathsite Messages postés 18 Date d'inscription mercredi 27 octobre 2010 Statut Membre Dernière intervention 22 janvier 2013 - 22 janv. 2013 à 09:14
Deathsite Messages postés 18 Date d'inscription mercredi 27 octobre 2010 Statut Membre Dernière intervention 22 janvier 2013 - 22 janv. 2013 à 09:14
A voir également:
- Rechercher la valeur la plus proche dans une ligne d'un tableau
- Rechercher ou entrer l'adresse - Guide
- Tableau croisé dynamique - Guide
- Aller à la ligne excel - Guide
- Adresse IP locale : comment la trouver facilement - Guide
- Tableau ascii - Guide
6 réponses
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 213
Modifié par eriiic le 21/01/2013 à 11:13
Modifié par eriiic le 21/01/2013 à 11:13
Bonjour à tous,
en E22 :
Pas la peine d'en avoir peur, il suffit de valider autrement c'est tout.
en E23 :
https://www.cjoint.com/c/CAvlbsk3OQX
eric
edit: simplification de formule.
en E22 :
en E23 :
https://www.cjoint.com/c/CAvlkVEfzYL
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
en E22 :
=INDEX(DECALER('liste des grades et indices'!$A$1;EQUIV($B$3;'liste des grades et indices'!$A:$A;0)-1;1;;13);EQUIV(MIN(ABS(E21-DECALER('liste des grades et indices'!$A$1;EQUIV($B$3;'liste des grades et indices'!$A:$A;0)-1;1;;13)));ABS(E21-DECALER('liste des grades et indices'!$A$1;EQUIV($B$3;'liste des grades et indices'!$A:$A;0)-1;1;;13));0))formule matricielle à valider avec shift+ctrl+entrée
Pas la peine d'en avoir peur, il suffit de valider autrement c'est tout.
en E23 :
=EQUIV(E22;DECALER('liste des grades et indices'!$A$1;EQUIV($B$3;'liste des grades et indices'!$A:$A;0)-1;1;;13))
https://www.cjoint.com/c/CAvlbsk3OQX
eric
edit: simplification de formule.
en E22 :
=INDEX(DECALER('liste des grades et indices'!$A$1;EQUIV($B$3;'liste des grades et indices'!$A:$A;0)-1;1;;13);E23)
en E23 :
=EQUIV(MIN(ABS($E$21-DECALER('liste des grades et indices'!$A$1;EQUIV($B$3;'liste des grades et indices'!$A:$A;0)-1;1;;13)));ABS($E$21-DECALER('liste des grades et indices'!$A$1;EQUIV($B$3;'liste des grades et indices'!$A:$A;0)-1;1;;13));0)formule matricielle à valider avec shift+ctrl+entrée
https://www.cjoint.com/c/CAvlkVEfzYL
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 394
18 janv. 2013 à 18:25
18 janv. 2013 à 18:25
Bonjour
Merci pour la bonne année, on vous la retourne avec plaisir.
Ci joint une proposition.
Pour la mettre en place, il a fallu refaire une grille de vos valeurs par garde:
_ classé dans chaque colonne par ordre croissant
_ sans doublon.
Voyez si ça peut vous convenir.
https://www.cjoint.com/c/CAssyZGUWzB
revenez si besoin de complément
crdlmnt
Merci pour la bonne année, on vous la retourne avec plaisir.
Ci joint une proposition.
Pour la mettre en place, il a fallu refaire une grille de vos valeurs par garde:
_ classé dans chaque colonne par ordre croissant
_ sans doublon.
Voyez si ça peut vous convenir.
https://www.cjoint.com/c/CAssyZGUWzB
revenez si besoin de complément
crdlmnt
Deathsite
Messages postés
18
Date d'inscription
mercredi 27 octobre 2010
Statut
Membre
Dernière intervention
22 janvier 2013
21 janv. 2013 à 09:22
21 janv. 2013 à 09:22
Bonjour,
je n'ai pas pu regarder votre réponse ce week-end, donc je visn de le faire.
Tout d'abord merci d'avoir regardé ce problème.
Ensuite, le soucis étant que je ne peux pas modifier le tableau : ce tableau correspond à des textes et décrets réglementaires auxquels je ne peux me soustraire. De ce fait les doublons ne peuvent pas être enlever.
C'est pour cela que je pensais que la recherche dans ce tableau pouvait éventuellement se faire par le grade, puisqu'à un seul grade correspond une seule ligne du tableau.
cordialement
je n'ai pas pu regarder votre réponse ce week-end, donc je visn de le faire.
Tout d'abord merci d'avoir regardé ce problème.
Ensuite, le soucis étant que je ne peux pas modifier le tableau : ce tableau correspond à des textes et décrets réglementaires auxquels je ne peux me soustraire. De ce fait les doublons ne peuvent pas être enlever.
C'est pour cela que je pensais que la recherche dans ce tableau pouvait éventuellement se faire par le grade, puisqu'à un seul grade correspond une seule ligne du tableau.
cordialement
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 394
Modifié par Vaucluse le 21/01/2013 à 10:12
Modifié par Vaucluse le 21/01/2013 à 10:12
Non, ce n'est pas possible avec cette formule, car co,ntrairement à ce que vous dites, il y a pour chaque grade plusieurs fois la, même valeur, et elle ne sont pas classées
Mais qu'est ce qui vous empêche d'utiliser le tableau que j'ai rajouté tout en gardant le tableau d'origine
De toutes façons vous ne pourrez pas baser de recherche sur ce tableau tant que plusieurs lignes auront la, même valeur.
Excel ne saura ps dans tous les cas à quelle ligne s'adresser s'il y en a deux identiques
Bonne chance quand même
crdlmnt.
Mais qu'est ce qui vous empêche d'utiliser le tableau que j'ai rajouté tout en gardant le tableau d'origine
De toutes façons vous ne pourrez pas baser de recherche sur ce tableau tant que plusieurs lignes auront la, même valeur.
Excel ne saura ps dans tous les cas à quelle ligne s'adresser s'il y en a deux identiques
Bonne chance quand même
crdlmnt.
Deathsite
Messages postés
18
Date d'inscription
mercredi 27 octobre 2010
Statut
Membre
Dernière intervention
22 janvier 2013
21 janv. 2013 à 10:30
21 janv. 2013 à 10:30
Bonjour,
après vérification de mon tableau de la feuille 2, je pense que vous parlez des 0 que j'ai rajouté en fin de chaque ligne? certains grades n'ont pas tous 13 échelons, donc j'avais rajouté des 0 qui peuvent être enlevés. Par contre je ne comprends pas quand vous dites que les valeurs ne sont pas classées. Après vérification, elles sont par ordre croissant (en ligne uniquement) si l'on enlève les 0 de chaque fin de ligne.
Et à part si l'on prend en considération les 0 que j'avais rajouté (qui font pour certains grades quelques doubons notamment infirmier qui compté 5 0 à la fin de la ligne), toutes les lignes sont classées par ordre croissant.
Ensuite je ne peux malheuresement pas utiliser votre tableau, puisqu'en fonction des grades, l'indice le plus proche sera différent :
par exemple on recherche l'indice le plus proche de 420 (existant dans la feuille 2) :
pour un assistant médico-technique l'indice le plus proche de 420 sera 416 ce qui correspond à l'échelon 6
pour un assistant socio-éducatif l'indice le plus proche de 420 sera 420 ce qui correspond à l'échelon 7
pour un ingénieur l'indice le plus proche de 420 est 425 correspondant à l'échelon 4
...
Je ne sais pas si j'arrive à expliquer clairement ce que je pense, mais n'hésitez pas à me demander, il arrive que je sois brouillon dans mes explications!
Cordialement
après vérification de mon tableau de la feuille 2, je pense que vous parlez des 0 que j'ai rajouté en fin de chaque ligne? certains grades n'ont pas tous 13 échelons, donc j'avais rajouté des 0 qui peuvent être enlevés. Par contre je ne comprends pas quand vous dites que les valeurs ne sont pas classées. Après vérification, elles sont par ordre croissant (en ligne uniquement) si l'on enlève les 0 de chaque fin de ligne.
Et à part si l'on prend en considération les 0 que j'avais rajouté (qui font pour certains grades quelques doubons notamment infirmier qui compté 5 0 à la fin de la ligne), toutes les lignes sont classées par ordre croissant.
Ensuite je ne peux malheuresement pas utiliser votre tableau, puisqu'en fonction des grades, l'indice le plus proche sera différent :
par exemple on recherche l'indice le plus proche de 420 (existant dans la feuille 2) :
pour un assistant médico-technique l'indice le plus proche de 420 sera 416 ce qui correspond à l'échelon 6
pour un assistant socio-éducatif l'indice le plus proche de 420 sera 420 ce qui correspond à l'échelon 7
pour un ingénieur l'indice le plus proche de 420 est 425 correspondant à l'échelon 4
...
Je ne sais pas si j'arrive à expliquer clairement ce que je pense, mais n'hésitez pas à me demander, il arrive que je sois brouillon dans mes explications!
Cordialement
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 394
21 janv. 2013 à 12:31
21 janv. 2013 à 12:31
Bonjour
effectivement, j'avais assez mal compris la demande et en fait , j'allais chercher la valeur de E23 dans les N° de colonnes de la ligne 1 de la feuille Liste.....
En fait je viens de comprendre:
voyez ici si ça ne va pas mieux
https://www.cjoint.com/c/CAvmBLwJ8QL
Sachant quand même que comme j'utilise le code MIN;, il faut enlever les 0 du tableau pour y placer des cellules vides.
Mais notez que l'utilisation des codes MAX et MIN n'est utile que si vous avez des valeurs en dehors de la fourchette du grade correspondant.
crdlmnt
effectivement, j'avais assez mal compris la demande et en fait , j'allais chercher la valeur de E23 dans les N° de colonnes de la ligne 1 de la feuille Liste.....
En fait je viens de comprendre:
voyez ici si ça ne va pas mieux
https://www.cjoint.com/c/CAvmBLwJ8QL
Sachant quand même que comme j'utilise le code MIN;, il faut enlever les 0 du tableau pour y placer des cellules vides.
Mais notez que l'utilisation des codes MAX et MIN n'est utile que si vous avez des valeurs en dehors de la fourchette du grade correspondant.
crdlmnt
Deathsite
Messages postés
18
Date d'inscription
mercredi 27 octobre 2010
Statut
Membre
Dernière intervention
22 janvier 2013
21 janv. 2013 à 14:23
21 janv. 2013 à 14:23
Je viens de regarder votre tableau et cela fonctionne très bien.
Je m'excuse pour mes explications précédantes qui ont du paraître vagues voir lojn d'être claires!
Encore merci pour votre aide!
Cordialement
Je m'excuse pour mes explications précédantes qui ont du paraître vagues voir lojn d'être claires!
Encore merci pour votre aide!
Cordialement
ccm81
Messages postés
10851
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
16 avril 2024
2 404
18 janv. 2013 à 19:19
18 janv. 2013 à 19:19
Bonjour
Une autre solution avec macro qui évite de toucher à tes grilles
https://www.cjoint.com/?3AstmdPZJIZ
> Vaucluse
Salut à toi. Je me permet l'incruste,
Je viens juste de finir, je n'ai pas vu ta solution et comme ça me chagrine de jeter la mienne à la poubelle ....
cordialement
ccm81
Une autre solution avec macro qui évite de toucher à tes grilles
https://www.cjoint.com/?3AstmdPZJIZ
> Vaucluse
Salut à toi. Je me permet l'incruste,
Je viens juste de finir, je n'ai pas vu ta solution et comme ça me chagrine de jeter la mienne à la poubelle ....
cordialement
ccm81
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 394
Modifié par Vaucluse le 18/01/2013 à 19:27
Modifié par Vaucluse le 18/01/2013 à 19:27
Salut à toi aussi, et bonne année, tiens, en prime.
Pas de raison de la jeter, je pense qu'une macro est sans aucun doute ce qu'il faut pour résoudre plus élégamment et plus directement la question.
Alors ce serait dommage d'en priver le demandeur.. et tous ceux que ça ne manquera pas d'intèresser
bon WE
Pas de raison de la jeter, je pense qu'une macro est sans aucun doute ce qu'il faut pour résoudre plus élégamment et plus directement la question.
Alors ce serait dommage d'en priver le demandeur.. et tous ceux que ça ne manquera pas d'intèresser
bon WE
Deathsite
Messages postés
18
Date d'inscription
mercredi 27 octobre 2010
Statut
Membre
Dernière intervention
22 janvier 2013
21 janv. 2013 à 09:37
21 janv. 2013 à 09:37
Bonjour, et bonne année!
Merci pour ta réponse, par contre je suis complétement incompétent en terme de macros.
Quand tu mets qu'il faut copier coller les infos de la macro dans mon appli, où est qu'il faut les coller?
J'ai bien essayé, mais à chaque fois cela me fait bugger excel!
Merci pour ta réponse, par contre je suis complétement incompétent en terme de macros.
Quand tu mets qu'il faut copier coller les infos de la macro dans mon appli, où est qu'il faut les coller?
J'ai bien essayé, mais à chaque fois cela me fait bugger excel!
tontong
Messages postés
2549
Date d'inscription
mercredi 3 février 2010
Statut
Membre
Dernière intervention
23 avril 2024
1 054
19 janv. 2013 à 15:02
19 janv. 2013 à 15:02
Bonjour,
J'ai voulu terminer ce que j'avais commencé hier soir. De plus je profite du prétexte pour vous souhaiter "Meilleurs Voeux".
Je n'ai pas pu éviter une matricielle pour calculer un écart mini. en valeur absolue, le reste est plus classique.
https://www.cjoint.com/?3Ato75xRgCN
J'ai voulu terminer ce que j'avais commencé hier soir. De plus je profite du prétexte pour vous souhaiter "Meilleurs Voeux".
Je n'ai pas pu éviter une matricielle pour calculer un écart mini. en valeur absolue, le reste est plus classique.
https://www.cjoint.com/?3Ato75xRgCN
Deathsite
Messages postés
18
Date d'inscription
mercredi 27 octobre 2010
Statut
Membre
Dernière intervention
22 janvier 2013
21 janv. 2013 à 09:49
21 janv. 2013 à 09:49
Bonjour,
J'ai regardé votre tableau :
en E21, j'ai tapé un IM différent : 420
sur les 6 premières lignes du tableau cela correspond à :
6ème échelon 416
7ème échelon 420
5ème échelon 431
6ème échelon 416
4ème échelon 425
4ème échelon 416
...
Si je ne dis pas de bêtises, je n'ai pas trouvé dans votre tableau de lien avec le grade recherché (B3), qui défienira la ligne sur laquelle rechercher dans le tableau de la feuille 2.
Un grand merci en attendant pour avoir pris le temps de regarder mon problème !
J'ai regardé votre tableau :
en E21, j'ai tapé un IM différent : 420
sur les 6 premières lignes du tableau cela correspond à :
6ème échelon 416
7ème échelon 420
5ème échelon 431
6ème échelon 416
4ème échelon 425
4ème échelon 416
...
Si je ne dis pas de bêtises, je n'ai pas trouvé dans votre tableau de lien avec le grade recherché (B3), qui défienira la ligne sur laquelle rechercher dans le tableau de la feuille 2.
Un grand merci en attendant pour avoir pris le temps de regarder mon problème !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Deathsite
Messages postés
18
Date d'inscription
mercredi 27 octobre 2010
Statut
Membre
Dernière intervention
22 janvier 2013
21 janv. 2013 à 10:05
21 janv. 2013 à 10:05
Je vous remercie tous pour les réponses que vous m'avait fourni.
Je voulais également vous ajouter quelques précisions :
la cellule E22 se calcule par rapport aux cellules E21 et B3 permettant ainsi de retrouver le bon IM le plus proche pour le bon grade.
Il en va de même pour la cellule E23.
Je ne me rend pas compte de la complexité plus que probable de ce problème, mais je tiens encore à vous remercier pour le temps que vous avez consacré pour m'aider sur ce point.
Pensez-vous qu'il y puisse exister une solution sans macros ni matricielle?
Mes compétences dans ces domaines sont proches pour ne pas dire égales à 0.
Je voulais également vous ajouter quelques précisions :
la cellule E22 se calcule par rapport aux cellules E21 et B3 permettant ainsi de retrouver le bon IM le plus proche pour le bon grade.
Il en va de même pour la cellule E23.
Je ne me rend pas compte de la complexité plus que probable de ce problème, mais je tiens encore à vous remercier pour le temps que vous avez consacré pour m'aider sur ce point.
Pensez-vous qu'il y puisse exister une solution sans macros ni matricielle?
Mes compétences dans ces domaines sont proches pour ne pas dire égales à 0.
tontong
Messages postés
2549
Date d'inscription
mercredi 3 février 2010
Statut
Membre
Dernière intervention
23 avril 2024
1 054
21 janv. 2013 à 12:48
21 janv. 2013 à 12:48
Bonjour,
Au lieu de reporter le grade en B3 j'ai reporté ce que j'ai appelé Qualification 1 et Qualification 2 en F24 et F25. Pour un IM le plus proche égal à 420 il faudrait même ajouter Qualification 3.
Je n'ai pas ramené "IM le plus proche" en E22, il est resté en Q9 de la feuille "liste des grades.."
Si j'avais bien vu qu'il pouvait y avoir plusieurs grades possibles pour un même IM je n'avais pas vu qu'il pouvait y avoir plusieurs échelons. Pour IM = 420 >> 3 grades et 2 échelons.
Le résultat est un peu plus difficile à synthétiser. Faut-il un tableu de synthèse?
Au lieu de reporter le grade en B3 j'ai reporté ce que j'ai appelé Qualification 1 et Qualification 2 en F24 et F25. Pour un IM le plus proche égal à 420 il faudrait même ajouter Qualification 3.
Je n'ai pas ramené "IM le plus proche" en E22, il est resté en Q9 de la feuille "liste des grades.."
Si j'avais bien vu qu'il pouvait y avoir plusieurs grades possibles pour un même IM je n'avais pas vu qu'il pouvait y avoir plusieurs échelons. Pour IM = 420 >> 3 grades et 2 échelons.
Le résultat est un peu plus difficile à synthétiser. Faut-il un tableu de synthèse?
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 213
21 janv. 2013 à 13:49
21 janv. 2013 à 13:49
Salut tontong,
une réponse est remontée tout en haut (+1).
eric
une réponse est remontée tout en haut (+1).
eric
Deathsite
Messages postés
18
Date d'inscription
mercredi 27 octobre 2010
Statut
Membre
Dernière intervention
22 janvier 2013
21 janv. 2013 à 14:28
21 janv. 2013 à 14:28
Bonjour,
comme l'a signalé eric, la solution est trouvée.
Je vous remercie encore pour le temps que vous avez bien voulu consacrer à résoudre mon problème.
comme l'a signalé eric, la solution est trouvée.
Je vous remercie encore pour le temps que vous avez bien voulu consacrer à résoudre mon problème.
tontong
Messages postés
2549
Date d'inscription
mercredi 3 février 2010
Statut
Membre
Dernière intervention
23 avril 2024
1 054
21 janv. 2013 à 14:33
21 janv. 2013 à 14:33
Salut eriiic,
Merci de me l'avoir signalé: décidément je ne vois plus rien il va falloir que je change de lunettes ....ou pire...
Cependant ton calcul donne 367 comme la valeur la plus proche de 369.11 alors qu'il y a un 371 dans la table!
Merci de me l'avoir signalé: décidément je ne vois plus rien il va falloir que je change de lunettes ....ou pire...
Cependant ton calcul donne 367 comme la valeur la plus proche de 369.11 alors qu'il y a un 371 dans la table!
eriiic
Messages postés
24570
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 avril 2024
7 213
Modifié par eriiic le 21/01/2013 à 14:46
Modifié par eriiic le 21/01/2013 à 14:46
non, depuis le début vous avez une lecture verticale ou globale des données et il faut une lecture horizontale selon le grade.
Pour le grade d'infirmier (en B3) les échelons sont en ligne 5 : {308\324\343\367\390\416\446\481\0\0\0\0\0}
Le plus proche est bien l'échelon 4 = 367
eric
Pour le grade d'infirmier (en B3) les échelons sont en ligne 5 : {308\324\343\367\390\416\446\481\0\0\0\0\0}
Le plus proche est bien l'échelon 4 = 367
eric
tontong
Messages postés
2549
Date d'inscription
mercredi 3 février 2010
Statut
Membre
Dernière intervention
23 avril 2024
1 054
21 janv. 2013 à 14:47
21 janv. 2013 à 14:47
OK je retourne à la niche ;-)
21 janv. 2013 à 11:13
Merci pour votre réponse, cela fonctionne parfaitement : j'ai fait plusieurs tests et tous sont bons.
Encore merci pour votre aide!
21 janv. 2013 à 11:21
eric
21 janv. 2013 à 11:28
Encore merci, cela va me simplifier grandement le travail que je dois faire!