[Résolu] Rechercher une valeur dans un tableau

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.

[Résolu] Rechercher une valeur dans un tableau

Messagepar EJM » 18 Avr 2020 23:15

Bonjour, je suis en train de réaliser un projet de feuille de personnage pour un système multi univers de jeu de role.
Sur la feuille de personnage (ce que deviendra la feuille ppale), je cherche à pouvoir sélectionner mon univers (liste déroulante en B1), et mon objectif est que les cases D2 à D7 affichent les statistiques propres à cet univers. Celles ci sont renseignées en B2:B7 pour l'univers "fantasy", en B12:B17 pour l'univers "pulp" etc (les autres n'ont pas encore été renseignées comme il faut car je me heurte déjà à ce soucis).
J'ai pour le moment utilisé la fonction rechercheV, mais elle aboutit respectivement à B1 et B11, ce qui est logique. Je n'arrive pas à trouver un moyen de réclamer la "énième cse sous ce que la fonction recherchev renvoie". Vous avez des suggestions?
Pièces jointes
Base de donnée pour FDP.ods
(44.61 Kio) Téléchargé 6 fois
Dernière édition par EJM le 19 Avr 2020 12:18, édité 1 fois.
Open office 4.1.7 sous Windows
EJM
Membre lOOyal
Membre lOOyal
 
Message(s) : 36
Inscrit le : 21 Mars 2020 17:56

Re: Rechercher une valeur dans un tableau

Messagepar Noonours » 19 Avr 2020 01:33

Bonjour
En nommant des plages de cellules, tu peux les interpréter par une formule matricielle avec la fonction =INDIRECT

en D2, saisis:
Code : Tout sélectionner   AgrandirRéduire
=INDIRECT($B$1)

que tu valides matriciellement par Ctrl+Maj+Entrée.
J'ai re-créé un fichier sur le modèle du tien, il restait des scories de plages nommées qui perturbaient LibreOffice, peut-être que sur OpenOffice cela n'avait pas de conséquences. Je n'y ai mis que les "Fantasy" et "Pulp".
BDDpourFdPerso.ods
(43.45 Kio) Téléchargé 7 fois

Cordialement,
Noonours plantigrade râleur

Pour obtenir la réponse la plus précise possible, N’HÉSITEZ SURTOUT PAS À JOINDRE UN FICHIER

LibO 6.3.6.2 sous Windows 10
LibO 5.0.6.3 (obligation de version) sous Win 7
Avatar de l’utilisateur
Noonours
Membre cOOnverti
Membre cOOnverti
 
Message(s) : 364
Inscrit le : 11 Mai 2013 01:11
Localisation : Aix en Provence

Re: Rechercher une valeur dans un tableau

Messagepar EJM » 19 Avr 2020 08:55

Alors ca fonctionne bien, mais j'ai déjà utilisé ce système pour créer une liste déroulante. CA né créera pas de conflit?
Edit : ca crée bien un conflit. En B3 j'ai déjà indexé une liste déroulante sur la fonction indirect B1. Ca n'apparaissait pas dans le premier fichier joint car j'ai progressé sur un point surlequel je ne butait pas entre temps. Il y a une solution pour indexer deux plages différentes sur une même cellule?
Ci joint le fichier actuel
Pièces jointes
Base de donnée pour FDP.ods
(44.56 Kio) Téléchargé 4 fois
Open office 4.1.7 sous Windows
EJM
Membre lOOyal
Membre lOOyal
 
Message(s) : 36
Inscrit le : 21 Mars 2020 17:56

Re: Rechercher une valeur dans un tableau

Messagepar EJM » 19 Avr 2020 12:17

Alors j'ai solutionné mon soucis avec la fonction si(si(si(si(...)), mais je me heurte au même soucis 2 minutes après.
Pour plus de clarté, j'ai reporté cette question sur un post spécifique, merci déjà!
Open office 4.1.7 sous Windows
EJM
Membre lOOyal
Membre lOOyal
 
Message(s) : 36
Inscrit le : 21 Mars 2020 17:56

Re: [Résolu] Rechercher une valeur dans un tableau

Messagepar Noonours » 19 Avr 2020 15:03

Bonjour
Bien que marqué "[Résolu]", et après lecture de ton autre post sur le même fichier, je te propose une autre formule plutôt que des SI(SI(SI(.... difficiles à maintenir en cas d'erreur de formule.
(tu n'avais pas les yeux qui louchent après l'avoir écrite? :marto: )
Essaye dans la cellule D2 de la feuille 'PPALE' :
Code : Tout sélectionner   AgrandirRéduire
=INDIRECT("$'Stat FACES'.B"&EQUIV($B$1;'Stat FACES'.$A$1:$A$100;0)+LIGNE(A1))

Formule à étirer vers le bas avec la poignée de recopie.

Cordialement,
Noonours plantigrade râleur

Pour obtenir la réponse la plus précise possible, N’HÉSITEZ SURTOUT PAS À JOINDRE UN FICHIER

LibO 6.3.6.2 sous Windows 10
LibO 5.0.6.3 (obligation de version) sous Win 7
Avatar de l’utilisateur
Noonours
Membre cOOnverti
Membre cOOnverti
 
Message(s) : 364
Inscrit le : 11 Mai 2013 01:11
Localisation : Aix en Provence


Retour vers Tableur

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 2 invité(s)