Problème de formulation conditionnelle

deruf1 Messages postés 2 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 !

3 réponses

didibonf Messages postés 439 Statut Membre 96
 
Bonjour,
Je vous propose la formule suivante :
En D8:
=0,6*0,5/(NB.SI.ENS(B:B;B8;C:C;C8))
0
titeufdu89 Messages postés 387 Statut Membre 38
 
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
0
deruf1 Messages postés 2 Statut Membre
 
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 :)
0
titeufdu89 Messages postés 387 Statut Membre 38
 
EUH.... sans fichier ton explication me parle très peu... j'ai du mal a comprendre où tu veux en venir mais si c'est la valeur de la première occurence que tu souhaite utiliser, utiliser recherchev ou h, cette fonction renvoie la première occurence.
0