Problème de formulation conditionnelle
deruf1
Messages postés
2
Statut
Membre
-
titeufdu89 Messages postés 387 Statut Membre -
titeufdu89 Messages postés 387 Statut Membre -
Bonjour,
Voilà mon problème :
- J'ai une liste de données texte dans la colonne B de mon tableur, en l’occurrence des numéros de tronçons ("Tronçon 1", "Tronçon 2",...)
- J'ai une deuxième liste de données texte dans la colonne C de mon tableur, en l’occurrence des noms d'équipement ("VH 1"", "VH2",...)
Mon but serait de rentrer une formule dans chacune des lignes de la colonne D permettant de :
1. Repérer les lignes ayant le même texte dans la colonne B, i-e "Tronçon x" = "Tronçon x"
2. Si la première condition est vérifiée, repérer les lignes de la colonne C ayant le même texte, i-e "VH y" = "VH y"
3. Dans chacune des lignes de la colonne D remplissant ces deux conditions, renvoyer la formule 0.6*0.5/N, où N est le nombre de fois où ces deux conditions sont vérifiées pour le "Tronçon x" et la "VH y" indiqués sur la même ligne.
Par exemple, si :
B8=B9="Tronçon 1" ET C8=C9="VH1" ALORS D8=0.6*0.5/2 ET D9=0.6*0.5/2
La division par 2 est utilisée ici car seulement 2 lignes respectent ces deux conditions, il est variable selon le nombre de lignes respectant la condition.
Je ne touche pas du tout en VBA et aimerais dans la mesure du possible trouver une solution sans en avoir besoin...
Merci par avance pour votre aide précieuse !
Voilà mon problème :
- J'ai une liste de données texte dans la colonne B de mon tableur, en l’occurrence des numéros de tronçons ("Tronçon 1", "Tronçon 2",...)
- J'ai une deuxième liste de données texte dans la colonne C de mon tableur, en l’occurrence des noms d'équipement ("VH 1"", "VH2",...)
Mon but serait de rentrer une formule dans chacune des lignes de la colonne D permettant de :
1. Repérer les lignes ayant le même texte dans la colonne B, i-e "Tronçon x" = "Tronçon x"
2. Si la première condition est vérifiée, repérer les lignes de la colonne C ayant le même texte, i-e "VH y" = "VH y"
3. Dans chacune des lignes de la colonne D remplissant ces deux conditions, renvoyer la formule 0.6*0.5/N, où N est le nombre de fois où ces deux conditions sont vérifiées pour le "Tronçon x" et la "VH y" indiqués sur la même ligne.
Par exemple, si :
B8=B9="Tronçon 1" ET C8=C9="VH1" ALORS D8=0.6*0.5/2 ET D9=0.6*0.5/2
La division par 2 est utilisée ici car seulement 2 lignes respectent ces deux conditions, il est variable selon le nombre de lignes respectant la condition.
Je ne touche pas du tout en VBA et aimerais dans la mesure du possible trouver une solution sans en avoir besoin...
Merci par avance pour votre aide précieuse !
A voir également:
- Problème de formulation conditionnelle
- Mise en forme conditionnelle excel - Guide
- Excel liste déroulante conditionnelle - Guide
- Formule de math - Télécharger - Études & Formations
- Formuler z10 se problème - Forum TV & Vidéo
- Clémence souhaite faire calculer automatiquement les prix de 30 produits dans trois devises. elle a déjà saisi une formule de calcul pour le tarif du premier produit dans la première devise. corrigez sa formule afin que recopiée vers le bas puis vers la droite, elle remplisse correctement tout le tableau. - Forum Excel
3 réponses
Bonjour,
Essaye cette formule, par contre tu ne nous as pas dit ce si tu souhaitais afficher un autre calcul si il n'y avait pas de doublon alors j'ai laisser la cellule vide si pas d'occurence.
=SI(NB.SI.ENS(B:B;B1;C:C;C1)>1;0,6*0,5/NB.SI.ENS(B:B;B1;C:C;C1);"")
copie cette formule en cellule D et utilise la poignée de recopie pour la dupliquer
A bientot
Jc
Essaye cette formule, par contre tu ne nous as pas dit ce si tu souhaitais afficher un autre calcul si il n'y avait pas de doublon alors j'ai laisser la cellule vide si pas d'occurence.
=SI(NB.SI.ENS(B:B;B1;C:C;C1)>1;0,6*0,5/NB.SI.ENS(B:B;B1;C:C;C1);"")
copie cette formule en cellule D et utilise la poignée de recopie pour la dupliquer
A bientot
Jc
Super, merci beaucoup de votre réponse super rapide :)
Seul hic, c'est que je me suis un tout petit peu planté sur mon analyse...
Il ne faudrait pas que je divise par le nombre de fois où les conditions sont vérifiées mais plutôt par la somme des nombre inscrit dans les lignes correspondantes de la colonne E, en l'occurrence le nombre d'équipements.
Je m'explique, si je reprends mon exemple, j'avais pensé à :
SI
B8=B9="Tronçon 1"
ET
C8=C9="VH1"
ALORS
D8 = 0.6*0.5/(SOMME.SI.ENS($E$1:$E$3041;$B$1:$B$3041;B8;$C$18:C$3041;C9))
D9 = 0.6*0.5/(SOMME.SI.ENS($E$1:$E$3041;$B$1:$B$3041;B9;$C$18:C$3041;C9))
Mais un problème persiste...
J'aimerais, dès lors que les conditions soient respectées, que les cellules en D s'appuient sur les valeurs de la première des lignes respectant les conditions.
Dans l'exemple plus haut, j'aimerais donc avoir :
D8 = 0.6*0.5/(SOMME.SI.ENS($E$1:$E$3041;$B$1:$B$3041;B8;$C$18:C$3041;C9)) --> Rien ne change dans ce cas
D9 = 0.6*0.5/(SOMME.SI.ENS($E$1:$E$3041;$B$1:$B$3041;B8;$C$18:C$3041;C8))
Une idée peut être ?
Merci encore pour votre temps :)
Seul hic, c'est que je me suis un tout petit peu planté sur mon analyse...
Il ne faudrait pas que je divise par le nombre de fois où les conditions sont vérifiées mais plutôt par la somme des nombre inscrit dans les lignes correspondantes de la colonne E, en l'occurrence le nombre d'équipements.
Je m'explique, si je reprends mon exemple, j'avais pensé à :
SI
B8=B9="Tronçon 1"
ET
C8=C9="VH1"
ALORS
D8 = 0.6*0.5/(SOMME.SI.ENS($E$1:$E$3041;$B$1:$B$3041;B8;$C$18:C$3041;C9))
D9 = 0.6*0.5/(SOMME.SI.ENS($E$1:$E$3041;$B$1:$B$3041;B9;$C$18:C$3041;C9))
Mais un problème persiste...
J'aimerais, dès lors que les conditions soient respectées, que les cellules en D s'appuient sur les valeurs de la première des lignes respectant les conditions.
Dans l'exemple plus haut, j'aimerais donc avoir :
D8 = 0.6*0.5/(SOMME.SI.ENS($E$1:$E$3041;$B$1:$B$3041;B8;$C$18:C$3041;C9)) --> Rien ne change dans ce cas
D9 = 0.6*0.5/(SOMME.SI.ENS($E$1:$E$3041;$B$1:$B$3041;B8;$C$18:C$3041;C8))
Une idée peut être ?
Merci encore pour votre temps :)