Etes-vous dans le top 1% d'Excel ?
Vous avez aujourd’hui l’occasion de vérifier si vous êtes
dans le top 5% - et même probablement le top 1% ! – des utilisateurs d’Excel.
A mon avis, si vous êtes capable de trouver la solution au problème ci-dessous,
c’est gagné !
On a dans les colonnes A à E, dans chaque ligne, un code
article ainsi que les quantités commandées pour cet article dans quatre
tailles.
Votre mission est d’entrer en G3:H3 des formules que vous
pourrez recopier vers le bas et qui listeront, au rythme d’une ligne par
commande, les quantités commandées pour chaque combinaison possible d’une
référence et d’une taille.
Pour faciliter la lecture des colonnes G et H, vous devez
aussi indiquer par un changement de couleur de fond le passage d’une référence
à la référence suivante.
Je vous laisse travailler... Ne regardez pas la solution tout de suite !
Voici la solution que je vous propose :
G3 : =decaler($A$3;ent((ligne()-3)/4)+1;0)&" -
"&index($B$3:$E$3; mod(ligne()+1;4)+1)
H3 : =decaler($B$4;ent((ligne()-3)/4);mod(ligne()+1;4))
Condition pour le format conditionnel en fond jaune, pour les
cellules G3:H22 :
=mod(ent((ligne()+1)/4);2)=0
Remarque – On pourrait aussi, mais je n’ai pas voulu
alourdir les formules présentes, inclure dans les trois formules (G3, H3,
format conditionnel) un test qui permet d’afficher des cellules vides sur fond
blanc si l’on recopie les formules au-delà de la ligne 22 !
2 Commentaire(s):
ma solution:
G3=INDEX($A$4:$A$8;ARRONDI.SUP((LIGNE()-2)/4;0))&" - "&INDEX($B$3:$E$3;;1+MOD((LIGNE()+1);4))
H3=RECHERCHEV(GAUCHE(G3;5)*1;$A$4:$E$8;EQUIV(DROITE(G3;NBCAR(G3)-8);$A$3:$E$3;0);FAUX)
format:=MOD((LIGNE()-3);8)>3
C'est votre blog qui m'a fait découvrir la fonction decaler il y a quelques semaines donc je ne me la suis pas encore approprié...
By Philippe, sur 11:49 PM
Personnellement, je n'aime pas bien utiliser LIGNE()+x, car si on déplace le tableau, ça ne fonctionne plus !
Du coup, je fais une différence avec la première ligne du tableau de cette manière :
G4 =INDEX($A$4:$A$8;ARRONDI.INF((LIGNE()-LIGNE($G$4))/4;0)+1)&" - "&INDEX($B$3:$E$3;1;MOD(LIGNE()-LIGNE($G$4);4)+1)
H4 =INDEX($B$4:$E$8;ARRONDI.INF((LIGNE()-LIGNE($G$4))/4;0)+1;MOD(LIGNE()-LIGNE($G$4);4)+1)
By Julien, sur 8:38 AM
Enregistrer un commentaire
<< Accueil