Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

recherchev .... à améliorer certainement

  • Initiateur de la discussion Initiateur de la discussion Chubby
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Chubby

XLDnaute Impliqué
Bonjour,

Voilà un petit problème (fichier joint) que j'ai essayé de résoudre en passant par une recherchev. Les opérations intermédiaires en font un travail un peu lourd que je voudrais alléger. Je suis sûr que les amateurs de index, equiv ou encore en macro se feront un ti plaisir de m'aider.
Je vous laisse découvrir le fichier. La page 1 étant des mouvements, la page 2 un tableau intermédiaire et la page 3 étant le résultat que je recherche à avoir.
Merci encore de votre aide précieuse.
Chube
 

Pièces jointes

Re : recherchev .... à améliorer certainement

Bonjour,

Pas sûr d'avoir compris grand chose.

Sur ta feuille finale, dans tes formules RECHERCHEV, tu peux mettre la référence de la cellule au lieu de taper le code "en dur".

Ca donne par exemple pour la formule en B2 :

Code:
=SI(RECHERCHEV([COLOR=red]$A2[/COLOR];'2-ordre colonnes'!$A$2:$N$50;2)="VAZIA";0;
RECHERCHEV([COLOR=red]$A2[/COLOR];'2-ordre colonnes'!$A$2:$N$50;2))

à adapter pour les autres formules.

A te (re)lire avec plus de précisions si pas ça

@+
 
Re : recherchev .... à améliorer certainement

Bonjour Tibo et merci de ton aide.
C'est effectivement un truc qui simplifie un peu la vie.
En fait mon soucis est de supprimer l'étape intermédiaire (onglet 2) qui me demande de palucher pas mal pour mettre en ordre les colonnes puis de mettre en A à Z le tableau de sorte que la recherche v puisse extraire ce dont j'ai besoin et dans l'odre du tableau page 3.
Pour mieux situer le problème j'ai un tableau (p1) dans lequel je note mes mouvements de vins et je veux arriver à un tableau qui me dit où sont à l'instant t ces vins. Avec la recherche v je suis obligé de passer par la page 2. Alors la question est de pouvoir simplifier cette opération lourde et fastidieuse. Peut être dois réorganiser mon tableau page 1? Peut être existe-il une autre possibilité en automatisant par une macro ou uen autre opération... est ce un peu plus clair pour toi?
Merci de ton intérêt et
@ +
 
Re : recherchev .... à améliorer certainement

Bonjour à tous,

Snifff... pour essayer une autre méthode qui court circuiterait la page intermédiaire j'ai essayé par les index equiv mais je suis un peu coincé.
Y aurait-il une âme charitable qui ne soit pas à la plage et qui serait intéressée par mon problème.
Merci à vous
Chube
 
Re : recherchev .... à améliorer certainement

Bonjour,

J'ai regardé de nouveau ton fichier avec tes explications.

Toujours pas compris grand chose.

Tu souhaites supprimer l'étape de la 2ème feuille.

Mais le souci, c'est que je ne vois pas comment tu obtenais cette 2ème feuille à partir de la 1ère feuille.

Peut-être joindre un nouveau fichier (avec maxi 15 lignes significatives) de façon à expliquer dans le détail comment on doit passer de la 1ère à la 3ème feuille.

A te (re)lire

@+
 
Re : recherchev .... à améliorer certainement

Bonjour Tibo et merci encore de te pencher sur mon problème.

Je comprends que ce ne soit pas clair pour toi, j'ai du avoir une révélation lorsque je me suis fait ces tableaux. Alors pour répondre à ta proposition j'ai mis quelques éléments dans le fichier qui devraient te répondre.
Fais moi savoir si ça t'avance où pas.
En fait dans ce travail en passant par la recherchev, tout est manuel et fastidieux donc source à erreur. je recherche donc une méthode qui me simplifie l'actualisation que j'ai en page 3. Plus clair?
Bonne soirée

chube
 

Pièces jointes

Re : recherchev .... à améliorer certainement

re,

Quelques questions à la vue de ton nouveau fichier :

1 - A priori, ton tableau concerne les lignes dont la valeur en colonne L (onglet 1-mouvements) commencent par la lettre T. Est-ce bien ça ?

2 - Pour certaines de ces valeurs (Txx), on a plusieurs résultats (par exemple T08 avec 3 lignes). Laquelle faut-il prendre en compte et pourquoi ?

3 - Dans ton exemple, dans l'onglet 3-feuille finale, tu t'arrêtes à T10. Le but est-il de s'arrêter à T10 ou d'aller jusqu'à T49 ?

C'est la question 2 qui me préoccupe davantage.

A te (re)lire avec davantage de précisions et explications

@+
 
Re : recherchev .... à améliorer certainement

Merci Tibo d'assurer "la garde", blague mise à part voici mes réponses:

1: Oui effectivement, dans la colonne L de la feuille "1-mouvements", le T signifie tank. Je dois dire que j'ai aussi, mais ne figurent pas là des M (mobile), F (fermenter) suivi d'une valeur ex: F18, M25...

2: Là aussi effectivement à l'intérieur d'une "série identique" comme par exemple T08 il faut choisir la dernière (en fonction des dates) parmi toutes celles offertes. C'est pour celà que je dois, jusqu'à présent, recopier les colonnes et les mettre en ordre croissant de sorte de pouvoir les exploiter par recherchev. La feuille 3 est sensée me donner l'état à l'instant t (en fonction de la feuille 1-mouvement) du chai.

3: j'ai volontairement limité les T (cuves) à 10 mais on est loin de la réalité qui atteint plus de 100.
Pour résumer des vins sont en cuve et sont transferés dans d'autres cuves (1-mouvements: from (de) .... to (à). Je veux connaitre à tout instant où est tel vin, je filtre le code (col M de la feuille 1). ex: SY03 est dans T01. avec d'ailleurs des fois des risques de colusion.
Par ailleurs, je veux avoir un état global et actualisé du chai, je me fais la page 2 puis la page 3. Pas simple tu vois!

Dis moi si ça t'avance
@+ et merci encore de ton aide
 
Re : recherchev .... à améliorer certainement

Bonjour,

Je te propose une solution basée sur les formules suivantes :

Sur ton onglet 3-feuille finale :

en A2 :

Code:
=SI(NB.SI('1-mouvements'!$L:$L;"T"&TEXTE(LIGNE()-1;"00"))=0;"";
"T"&TEXTE(LIGNE()-1;"00"))

en B2 :

une formule matricielle :

Code:
=SI($A2="";"";INDEX('1-mouvements'![COLOR=red][B]$C:$C[/B][/COLOR];MAX(('1-mouvements'!$L$2:$L$100=$A2)*
LIGNE($2:$100))))

Formule matricielle à valider par CTRL + MAJ + ENTREE

Cette formule est à recopier sur les colonnes suivantes en adaptant la référence de la colonne de ton onglet 1-mouvements (ce que j'ai mis en rouge).

Adapter également les plages de cellules (ici jusqu'à la ligne 100).

Une fois la première complétée, il ne reste plus qu'à recopier vers le bas.

Attention : les formules matricielles peuvent être gourmandes en temps de calcul sur des plages de cellules importantes.

Je te laisse tester

@+
 
Re : recherchev .... à améliorer certainement

Bonjour Tibo, bonjour à tous,

D'abord un énorme merci à toi Tibo... je ne sais pas si ton image est celle d'un St Bernard mais tu viens de faire un superbe sauvetage en crevasse.
J'ai testé et j'ai été conquis. Je ne sais pas comment tu es arrivé à ces formules magiques que j'essaye à présent de décortiquer.
Je vais aussi essayer avec des Mxx ou encore Fyy au milieu des Tzz de la page 1. Je regarde tout ça avec plus d'attention un peu plus tard.
En attendant merci encore pour ta disponibilité et ton efficacité.

@+
 
Re : recherchev .... à améliorer certainement

Bonsoir Tibo et bonsoir à vous tous... si, si je sais qu'il y en a qui ont quelque chose à dire mais qui observent seulement,

Bien, plus sérieusement, j'ai repris tes formules magiques (car pas encore vraiment bien comprises) et là je dois dire BRAVO! Plus besoin de se repalucher la seconde feuille, c'est super.

En revanche, j'ai voulu ajouter une nouvelle ligne avec un nouveau transfert (voir le fichier joint v4). Là malheureusement je me retrouve avec un doublon. La cuve T08 qui devrait apparaitre vide au profit de la T23, apparait encore.
Je te laisse le fichier pour mieux matérialiser le truc. Faut-il passer par une recherche de doublon ou peut être intégrer en colonne cachée une colonne reprenant les cuves "donnantes", dans cet exemple la T08?
Qu'en penses-tu?

Autre chose, pour ce qui est des cuves commençant par M et F. J'ai l'intention de les faire apparaitre dans la liste du 3ème onglet. Faut-il modifier la formule avec F ou M à la place de T ou construire une autre formule?

Je suis désolé de t'en demandé autant mais ça me serait d'un grand service.

Je te remercie encore pour ton travail. J'apprécie beaucoup.

Chube
 

Pièces jointes

Re : recherchev .... à améliorer certainement

Bonjour,

POUr établir le tableau, je me suis focalisé sur les Txx de la colonne L (et uniquement cette colonne).

Dans les formules que je t'ai proposé, je faisais référence à la ligne 100, tu peux remplacer le 100 par 1000 ou davantage en fonction de la taille de ton tableau.

Quant au lien entre la colonne B (From) et la colonne L (To), j'avoue ne pas avoir vraiment compris.

A te (re)lire avec davantage de précisions

@+
 
Re : recherchev .... à améliorer certainement

Bonsoir Tibo,

Merci pour ta réponse, je vais essayer de t'apporter des explications concernant le tableau 1-mouvements.
A une ligne donnée correspond une opération de transfert. On a donc à titre d'exemple en ligne 22 du tableau v4 un transfert de vin de la cuve F22 (en colonne B) vers la cuve T08 (colonne L). Il s'agit du vin code TR01. Ce vin sera ensuite transféré (ligne 68) de cette cuve T08 vers M92. La cuve T08 (ligne 80, col L) se trouvant libre sera remplie de vin à partir de la cuve T31 code SY26/30/31 (colonne B). Ligne 81 on transfère T08 vers T23. Voilà qui devrait t'aider à comprendre ce tableau.
C'est donc de là que nait le problème où la T08 apparait pleine (colonne L) alors qu'elle est vide.
Je devrait peut être réfléchir à une autre organisation du tableau. Son organisation répondait assez bien à mon utilisation. Mais si son exploitation nécessite autre chose, la question reste ouverte.
Merci de ta patience,
Chube
 
Re : recherchev .... à améliorer certainement

Bonjour,

Tu nous indiques que la cuve T08 est remplie (selon ligne 22). A la lecture de cette ligne, le volume est de 7800 litres.

En ligne 68, on transfère de la cuve T08 vers la cuve M92 7000 litres.

La cuve T08 n'est donc pas vide ?

Ou alors ne faut-il pas tenir compte des volumes et considérer que la cuve est vidée dès lors qu'on transfère vers une autre cuve ?

A te (re)lire avec quelques explications supplémentaires pour une meilleure compréhension de ton problème

@+
 
Re : recherchev .... à améliorer certainement

Bonjour Tibo et merci pour ta persévérance.

Tu as apparemment bien compris le système des transferts.
Lorsque tu mentionnes les volumes c'est effectivement une chose très importante car il se peut, lors d'assemblages par exemple, que les transferts ne soient que partiels. L'exemple de la T08 en ligne 22 puis en ligne 68 sont un exemple qui n'est pas criant mais qui existe.
On peut donc avoir un transfert partiel d'une cuve à une autre et un complément est ensuite apporter pour remplir la cuve donnante. Je t'ai mis un exemple en bleu en bas de tableau.
Fais moi savoir si ça répond à ta question.
Bonne journée à toi
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

M
  • Question Question
Réponses
3
Affichages
1 K
J
Réponses
4
Affichages
3 K
J
F
Réponses
2
Affichages
904
Fredbel
F
S
Réponses
4
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…