Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Nombre d'occurences avec critères différents dans 2 colonnes

5 réponses
Avatar
RP
Dans Excel, je veux savoir le nombre de fois où le mot "Déplacement" se
retrouve dans une colonne quand, sur la même ligne, dans une autre colonne,
se trouve le chiffre 9.

Merci à l'avance

5 réponses

Avatar
FFO
Salut à toi
Soit le mot "Déplacement" à trouver colonne A
Les 9 en colonne E
Je te propose ce code :

Colonne = "E"
Range("A1").Activate
n = 0
On Error Resume Next
Range("A1", "A" &
Range("A65535").End(xlUp).Row).Find(What:="Déplacement", After:=Range("A1"),
LookIn:=xlFormulas _
, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:úlse, SearchFormat:úlse).Activate
If ActiveCell.Address <> Range("A1").Address Then
Départ = ActiveCell.Address
For i = 1 To Range("A65535").End(xlUp).Row
If Range(Colonne & ActiveCell.Row) = 9 Then
n = n + 1
End If
Range("A1", "A" &
Range("A65535").End(xlUp).Row).FindNext(After:¬tiveCell).Activate
If ActiveCell.Address = Départ Then
Exit For
End If
Next
End If
MsgBox (n)

La variable Colonne représente la colonne des 9 à adapter à ton cas

Le résultat dans une boîte de dialogue

Celà devrait convenir

Dis moi !!!!
Avatar
CAP2
Salut,

tu te mets dans une cellule et tu tapes
=SOMME((A1:A10="Déplacement")*(B1:B10=9))

en ajustant avec tes plages...

ATTENTION : C'est une formule matricielle à valider avec CTRL MAJ Entrée

Ca marche ?

CAP2

"RP" a écrit dans le message de news:

Dans Excel, je veux savoir le nombre de fois où le mot "Déplacement" se
retrouve dans une colonne quand, sur la même ligne, dans une autre
colonne,
se trouve le chiffre 9.

Merci à l'avance



Avatar
RP
"CAP2" wrote:

Salut,

tu te mets dans une cellule et tu tapes
=SOMME((A1:A10="Déplacement")*(B1:B10=9))

en ajustant avec tes plages...

ATTENTION : C'est une formule matricielle à valider avec CTRL MAJ Entrée

Ca marche ?

CAP2

"RP" a écrit dans le message de news:

> Dans Excel, je veux savoir le nombre de fois où le mot "Déplacement" se
> retrouve dans une colonne quand, sur la même ligne, dans une autre
> colonne,
> se trouve le chiffre 9.
>
> Merci à l'avance
>


Merci, ça a très bien fonctionné. Il a toutefois fallu que je remplace "SOMME" par "SOMMEPROD" dans la formule. Quand tu as écrit que c'était une formule matricielle et que j'ai constaté que ça ne marchait pas avec "somme" (dans la cellule, le message "valeur" apparaissait), j'ai fouillé dans l'aide sur les fonctions et j'ai découvert "SOMMEPROD". Je l'ai essayé et ça a marché.



Merci encore
Avatar
RP
"FFO" wrote:

Salut à toi
Soit le mot "Déplacement" à trouver colonne A
Les 9 en colonne E
Je te propose ce code :

Colonne = "E"
Range("A1").Activate
n = 0
On Error Resume Next
Range("A1", "A" &
Range("A65535").End(xlUp).Row).Find(What:="Déplacement", After:=Range("A1"),
LookIn:=xlFormulas _
, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:úlse, SearchFormat:úlse).Activate
If ActiveCell.Address <> Range("A1").Address Then
Départ = ActiveCell.Address
For i = 1 To Range("A65535").End(xlUp).Row
If Range(Colonne & ActiveCell.Row) = 9 Then
n = n + 1
End If
Range("A1", "A" &
Range("A65535").End(xlUp).Row).FindNext(After:¬tiveCell).Activate
If ActiveCell.Address = Départ Then
Exit For
End If
Next
End If
MsgBox (n)

La variable Colonne représente la colonne des 9 à adapter à ton cas

Le résultat dans une boîte de dialogue

Celà devrait convenir

Dis moi !!!!

Bonjour,



J'ai essayé ta suggestion. Je l'ai entrée comme une macro. Mais je n'ai pas
réussi à obtenir de réponse. Par contre, j'ai réussi en utilisant la formule
"SOMMEPROD".

Merci, c'est très gentil d'avoir répondu
Avatar
FFO
Rebonjour à toi

Sur ce lien un exemple avec mon code

Fais des essais et dis moi !!!

http://www.cijoint.fr/cjlink.php?file=cj200807/cij9n0B66H.xls.

"RP" wrote:



"FFO" wrote:

> Salut à toi
> Soit le mot "Déplacement" à trouver colonne A
> Les 9 en colonne E
> Je te propose ce code :
>
> Colonne = "E"
> Range("A1").Activate
> n = 0
> On Error Resume Next
> Range("A1", "A" &
> Range("A65535").End(xlUp).Row).Find(What:="Déplacement", After:=Range("A1"),
> LookIn:=xlFormulas _
> , LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
> MatchCase:úlse, SearchFormat:úlse).Activate
> If ActiveCell.Address <> Range("A1").Address Then
> Départ = ActiveCell.Address
> For i = 1 To Range("A65535").End(xlUp).Row
> If Range(Colonne & ActiveCell.Row) = 9 Then
> n = n + 1
> End If
> Range("A1", "A" &
> Range("A65535").End(xlUp).Row).FindNext(After:¬tiveCell).Activate
> If ActiveCell.Address = Départ Then
> Exit For
> End If
> Next
> End If
> MsgBox (n)
>
> La variable Colonne représente la colonne des 9 à adapter à ton cas
>
> Le résultat dans une boîte de dialogue
>
> Celà devrait convenir
>
> Dis moi !!!!
>
> Bonjour,

J'ai essayé ta suggestion. Je l'ai entrée comme une macro. Mais je n'ai pas
réussi à obtenir de réponse. Par contre, j'ai réussi en utilisant la formule
"SOMMEPROD".

Merci, c'est très gentil d'avoir répondu