Pointer une matrice via le résultat de la fonction concatener
Fermé
bigben!!
Messages postés
8
Date d'inscription
mercredi 12 octobre 2016
Statut
Membre
Dernière intervention
13 octobre 2016
-
Modifié par bigben!! le 12/10/2016 à 06:02
eriiic Messages postés 24595 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 2 septembre 2024 - 13 oct. 2016 à 17:50
eriiic Messages postés 24595 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 2 septembre 2024 - 13 oct. 2016 à 17:50
A voir également:
- Pointer une matrice via le résultat de la fonction concatener
- Fonction si et - Guide
- Concaténer pdf - Guide
- Concatener deux cellules excel - Guide
- Excel renvoyer la valeur d'une cellule en fonction d'une autre - Forum Logiciels
- Évariste souhaite télécharger le logiciel inkscape depuis le site de son éditeur. sélectionnez le résultat de recherche sur lequel il doit cliquer. - Forum Bugs et suggestions
7 réponses
Raymond PENTIER
Messages postés
58648
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
17 septembre 2024
17 197
12 oct. 2016 à 06:09
12 oct. 2016 à 06:09
Bonjour.
Non ; pour moi ce n'est pas très clair !
Mais à tout hasard je te suggère d'utiliser la fonction INDIRECT ...
Non ; pour moi ce n'est pas très clair !
Mais à tout hasard je te suggère d'utiliser la fonction INDIRECT ...
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 410
12 oct. 2016 à 09:15
12 oct. 2016 à 09:15
Bonjour
n'ayant pas votre fichier, ou un modèle similaire on nepeut qu'être très indicatif
=deux fonctions utilisable
une pour "garnir" indirect > ADRESSE
=ADRESSE(N° de ligne; N)de colonne;;;"nomde feuille")
ou sivous êtes dans la même feuille simplment:
=ADRESSE(N° de ligne;N° de colonne)
cette fonction vous dnne en texte l'adresse de la cellule identifiée et donc, s'utilise dans un champ INDIRECT:
adresse du champ:
=INDIRECT(ADRESSE(l1;C1)&":"&ADRESSE(L2;C2))
ou alors , 'est mieux mais ca dépend de vos formules, a fonction DECALER:
=DECALER(Cell départ;écart ligne, écart colonne;hauteurde champ;largeur de champ)
..qui peut s'utiliser pour définir un champ sans la fonction INDIRECT)
enfin, vous pouvez définir des limtes de champ en identifiant ligne et colonne dans une colonne de valeur cherchée:
=SOMMEPROD((Colonne recherche=valeur cherchée)*(LIGNE(A1:Aligne fin))
et idem avec les colonnes
(attention démarrer les champs sur la ligne 1 sino il faut un correcteur + ou - pour recaler le résultat
exemple chercher le N°de ligne de la valeur A dans un champ C1:X100
N° de ligne
=SOMMEPROD(($A$1:$X$100="A")*(LIGNE($A$1:$A$100)))
N° de colonne
=SOMMEPROD(($A$1:$X$100="A")*(COLONNE(($A$1:$A$1)))
pour en dire plus il faudrait un exemple de votre fichier que vous pouvez déposer sur:
https://www.cjoint.com/
en revenant ici coller le lien que vous aurez créé sur le site
A vous lire?
crdlmnt
n'ayant pas votre fichier, ou un modèle similaire on nepeut qu'être très indicatif
=deux fonctions utilisable
une pour "garnir" indirect > ADRESSE
=ADRESSE(N° de ligne; N)de colonne;;;"nomde feuille")
ou sivous êtes dans la même feuille simplment:
=ADRESSE(N° de ligne;N° de colonne)
cette fonction vous dnne en texte l'adresse de la cellule identifiée et donc, s'utilise dans un champ INDIRECT:
adresse du champ:
=INDIRECT(ADRESSE(l1;C1)&":"&ADRESSE(L2;C2))
ou alors , 'est mieux mais ca dépend de vos formules, a fonction DECALER:
=DECALER(Cell départ;écart ligne, écart colonne;hauteurde champ;largeur de champ)
..qui peut s'utiliser pour définir un champ sans la fonction INDIRECT)
enfin, vous pouvez définir des limtes de champ en identifiant ligne et colonne dans une colonne de valeur cherchée:
=SOMMEPROD((Colonne recherche=valeur cherchée)*(LIGNE(A1:Aligne fin))
et idem avec les colonnes
(attention démarrer les champs sur la ligne 1 sino il faut un correcteur + ou - pour recaler le résultat
exemple chercher le N°de ligne de la valeur A dans un champ C1:X100
N° de ligne
=SOMMEPROD(($A$1:$X$100="A")*(LIGNE($A$1:$A$100)))
N° de colonne
=SOMMEPROD(($A$1:$X$100="A")*(COLONNE(($A$1:$A$1)))
pour en dire plus il faudrait un exemple de votre fichier que vous pouvez déposer sur:
https://www.cjoint.com/
en revenant ici coller le lien que vous aurez créé sur le site
A vous lire?
crdlmnt
bigben!!
Messages postés
8
Date d'inscription
mercredi 12 octobre 2016
Statut
Membre
Dernière intervention
13 octobre 2016
Modifié par bigben!! le 12/10/2016 à 15:03
Modifié par bigben!! le 12/10/2016 à 15:03
bonjour Vaucluse
https://www.cjoint.com/c/FJmmHWUGq4b
Je vais vous donner le contexte et vous fournir le plus de détails possible.
Je collectionne les billets de banque canadien(petite coupures :) )
Dans la colonne A c'est les année, B les signatures possible pour chaque année, E préfixe du billet de banque (billet en quantité limité ou un peu plus rare...) et finalement la colonne F est le grade du billet. La colonne G est la valeur du billet.
Ce que je désire, c'est d'obtenir la valeur du billet de façon automatique.
J'aimerais faire une recherche selon 4 critères (et p-e 5 dans le futur).
POur trouver la valeur du billet de la ligne 2, je dois savoir: l'année, la signature, le préfixe et le grade. La valeur pointerait sur la cellule AJ7 (tableau des valeurs de 1973 avec la signature crow_bouey.
je suis dans le néant sur la façon d'arriver à mes fins.. est-ce via deux tableaux ou utiliser des nouvelles formules??
Il faut tenir compte que je peux avoir "plusieurs "billets avec la même année/signature/préfixe/grade.
Je me débrouille un peu mais là, ca devient difficile :)
Merci de votre temps
https://www.cjoint.com/c/FJmmHWUGq4b
Je vais vous donner le contexte et vous fournir le plus de détails possible.
Je collectionne les billets de banque canadien(petite coupures :) )
Dans la colonne A c'est les année, B les signatures possible pour chaque année, E préfixe du billet de banque (billet en quantité limité ou un peu plus rare...) et finalement la colonne F est le grade du billet. La colonne G est la valeur du billet.
Ce que je désire, c'est d'obtenir la valeur du billet de façon automatique.
J'aimerais faire une recherche selon 4 critères (et p-e 5 dans le futur).
POur trouver la valeur du billet de la ligne 2, je dois savoir: l'année, la signature, le préfixe et le grade. La valeur pointerait sur la cellule AJ7 (tableau des valeurs de 1973 avec la signature crow_bouey.
je suis dans le néant sur la façon d'arriver à mes fins.. est-ce via deux tableaux ou utiliser des nouvelles formules??
Il faut tenir compte que je peux avoir "plusieurs "billets avec la même année/signature/préfixe/grade.
Je me débrouille un peu mais là, ca devient difficile :)
Merci de votre temps
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 410
Modifié par Vaucluse le 12/10/2016 à 15:43
Modifié par Vaucluse le 12/10/2016 à 15:43
.. pas compris beaucoup plus avec l'ensemble des données que l'on trouve dans la feuille "Billet de un dollar"
si on revient simplement à votre formule dans votre premier message
soit:
INDEX(E2;B2;F2)
pour la remplacer en G2 sans même nommer le tableau AJ6:AR15, vous trouverez le résultat avec cette formule:
=INDEX(AJ6:AR15;EQUIV("*"&E2&"*";AI6:AI15;0);EQUIV(F2;AJ5:AR5;0))
et pour utiliser le nom en N2 si vos tableaux sont nommés correctement:
=INDEX(INDIRECT(N2);EQUIV("*"&E2&"*";AI6:AI15;0);EQUIV(F2;AJ5:AR5;0))
à condition bien sur que pour chaque tableau nommé, les valeurs cherchées débutent bien en:
sinon, revenez, ce sera un peu plus compliqué selon les infos de vos données
le reste des dimensions du tableau n'a pas d'importance si la formule inclus bien les dimensions du plus grand
crdlmnt
si on revient simplement à votre formule dans votre premier message
soit:
INDEX(E2;B2;F2)
pour la remplacer en G2 sans même nommer le tableau AJ6:AR15, vous trouverez le résultat avec cette formule:
=INDEX(AJ6:AR15;EQUIV("*"&E2&"*";AI6:AI15;0);EQUIV(F2;AJ5:AR5;0))
et pour utiliser le nom en N2 si vos tableaux sont nommés correctement:
=INDEX(INDIRECT(N2);EQUIV("*"&E2&"*";AI6:AI15;0);EQUIV(F2;AJ5:AR5;0))
à condition bien sur que pour chaque tableau nommé, les valeurs cherchées débutent bien en:
- AI6 pour la colonne de ref
- AJ5 pour la ligne de titre
- et que ces champs aient pour tous les tableaux les mêmes indications,soit celles de la feuille où se trouve les formules pour toutes celles qu'on peut trouver en E et F de chacune des feuilles
sinon, revenez, ce sera un peu plus compliqué selon les infos de vos données
le reste des dimensions du tableau n'a pas d'importance si la formule inclus bien les dimensions du plus grand
crdlmnt
bigben!!
Messages postés
8
Date d'inscription
mercredi 12 octobre 2016
Statut
Membre
Dernière intervention
13 octobre 2016
12 oct. 2016 à 16:03
12 oct. 2016 à 16:03
merci pour votre temps... disons que je crois que ça serait plus facile si on pouvait se parler :)
je vais regarder cela
je vais regarder cela
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
eriiic
Messages postés
24595
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
2 septembre 2024
7 234
Modifié par eriiic le 12/10/2016 à 19:01
Modifié par eriiic le 12/10/2016 à 19:01
Bonjour,
un essai, si j'ai bien compris.
J'ai défini un nouveau nom 'Crow_Bouey1973' qui inclu les titres de la table.
https://www.cjoint.com/c/FJmq4SMDlua
eric
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
un essai, si j'ai bien compris.
J'ai défini un nouveau nom 'Crow_Bouey1973' qui inclu les titres de la table.
=INDEX(INDIRECT(B2&A2);EQUIV(F2;INDEX(INDIRECT(B2&A2);1;);0);EQUIV("*"&E2;INDEX(INDIRECT(B2&A2);;1);0))
https://www.cjoint.com/c/FJmq4SMDlua
eric
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
bigben!!
Messages postés
8
Date d'inscription
mercredi 12 octobre 2016
Statut
Membre
Dernière intervention
13 octobre 2016
13 oct. 2016 à 01:22
13 oct. 2016 à 01:22
bonsoir Eric
Merci de vouloir m'aider à élucider ce problème avec moi.
Il y a un pépin, si je change le grade G pour le grade Gunc, la réponse devrait être 18 et non pas 3.
Je vais continuer à peaufiner votre formule.... je vais surement un jour y arriver lol
https://www.cjoint.com/c/FJmxrvmuEgb
Merci de vouloir m'aider à élucider ce problème avec moi.
Il y a un pépin, si je change le grade G pour le grade Gunc, la réponse devrait être 18 et non pas 3.
Je vais continuer à peaufiner votre formule.... je vais surement un jour y arriver lol
https://www.cjoint.com/c/FJmxrvmuEgb
eriiic
Messages postés
24595
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
2 septembre 2024
7 234
13 oct. 2016 à 08:28
13 oct. 2016 à 08:28
Bonjour,
Ah oui, j'avais inversé ligne/colonne :
eric
Ah oui, j'avais inversé ligne/colonne :
=INDEX(INDIRECT(B2&A2);EQUIV("*"&E2;INDEX(INDIRECT(B2&A2);;1);0);EQUIV(F2;INDEX(INDIRECT(B2&A2);1;);0))
eric
bigben!!
Messages postés
8
Date d'inscription
mercredi 12 octobre 2016
Statut
Membre
Dernière intervention
13 octobre 2016
>
eriiic
Messages postés
24595
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
2 septembre 2024
13 oct. 2016 à 14:01
13 oct. 2016 à 14:01
Bonjour Eric,
effectivement, ca fonctionne!! Ce que je ne comprends pas, c'est lorsque je tente de comprendre tes formules, c'est toujours écrit "volatile" .
est-ce que tu peux m'expliquer stp?
effectivement, ca fonctionne!! Ce que je ne comprends pas, c'est lorsque je tente de comprendre tes formules, c'est toujours écrit "volatile" .
est-ce que tu peux m'expliquer stp?
eriiic
Messages postés
24595
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
2 septembre 2024
7 234
Modifié par eriiic le 13/10/2016 à 15:22
Modifié par eriiic le 13/10/2016 à 15:22
???
Tu peux mettre une capture écran ,
Faire 'répondre' et non 'commenter' pour pouvoir joindre une image.
Effectivement Indirect() est volatile mais je suis étonné qu'il l'indique quelque part...
Tu peux mettre une capture écran ,
Faire 'répondre' et non 'commenter' pour pouvoir joindre une image.
Effectivement Indirect() est volatile mais je suis étonné qu'il l'indique quelque part...
bigben!!
Messages postés
8
Date d'inscription
mercredi 12 octobre 2016
Statut
Membre
Dernière intervention
13 octobre 2016
13 oct. 2016 à 17:41
13 oct. 2016 à 17:41
voila
bigben!!
Messages postés
8
Date d'inscription
mercredi 12 octobre 2016
Statut
Membre
Dernière intervention
13 octobre 2016
13 oct. 2016 à 17:44
13 oct. 2016 à 17:44
eriiic
Messages postés
24595
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
2 septembre 2024
7 234
13 oct. 2016 à 17:50
13 oct. 2016 à 17:50
Ah oui, je n'avais jamais fait attention qu'il l'indiquait ici.
Une fonction volatile est ré-évaluée à chaque fois, même si ses antécédents n'ont pas changé. Et donc il ne peut pas l'évaluer ici.
eric
Une fonction volatile est ré-évaluée à chaque fois, même si ses antécédents n'ont pas changé. Et donc il ne peut pas l'évaluer ici.
eric
12 oct. 2016 à 06:29
Je vais essayer de mieux vous éclairer.
Je rentre 4 différentes données( avec liste déroulante) dans les cellule A2;B2;C2 et D2
Je dois ensuite faire une recherche selon ces 4 critères dans mes différentes plages (ex: S10;V:15) ( J'ai plus de 16 tableaux)