OVH Cloud OVH Cloud

compter lignes contenant tel et tel attribut

3 réponses
Avatar
Aerak
Bonjour,

Dans une feuille de calcul (excel XP), j'ai plusieurs colonnes dont une (A)
contient des cellules avec valeurs chiffrées + couleur, et une autre (B) des
cellules contenant du texte.
Existe-t-il un moyen de compter le nombre de lignes qui contiennent à la
fois une cellule de couleur verte (colonne A) et la valeur "tel mot"
(colonne B) ?

D'avance merci pour votre aide,

Régis

3 réponses

Avatar
Daniel
Bonjour.
Essaie :

Sub test()
Dim c As Range, Plage As Range, Ctr As Long
Set Plage = Range("A1", Range("A65536").End(xlUp))
For Each c In Plage
If c.Interior.ColorIndex = 4 And c.Offset(0, 1) = "tel mot" Then
Ctr = Ctr + 1
End If
Next c
MsgBox Ctr
End Sub

Cordialement.
Daniel
"Aerak" <rgo1012(supp_ceci)@hotmail.com> a écrit dans le message de news:
uyrjY%
Bonjour,

Dans une feuille de calcul (excel XP), j'ai plusieurs colonnes dont une
(A) contient des cellules avec valeurs chiffrées + couleur, et une autre
(B) des cellules contenant du texte.
Existe-t-il un moyen de compter le nombre de lignes qui contiennent à la
fois une cellule de couleur verte (colonne A) et la valeur "tel mot"
(colonne B) ?

D'avance merci pour votre aide,

Régis



Avatar
Régis
Merci pour ton aide Daniel.
Malheureusement, pour le moment, ça ne fonctionne pas.
En effet, la MsgBox indique systématiquement "0" (même lorsque j'enlève "And
c.Offset(0, 1) = "tel mot"" et que je m'assure qu'il y a bien des cellules
dont "Interior.ColorIndex = 4").
Je n'y connais rien en vba mais ne faut-il pas initialiser c ou(et) Ctr ?

D'avance merci

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

Bonjour.
Essaie :

Sub test()
Dim c As Range, Plage As Range, Ctr As Long
Set Plage = Range("A1", Range("A65536").End(xlUp))
For Each c In Plage
If c.Interior.ColorIndex = 4 And c.Offset(0, 1) = "tel mot" Then
Ctr = Ctr + 1
End If
Next c
MsgBox Ctr
End Sub

Cordialement.
Daniel
"Aerak" <rgo1012(supp_ceci)@hotmail.com> a écrit dans le message de news:
uyrjY%
Bonjour,

Dans une feuille de calcul (excel XP), j'ai plusieurs colonnes dont une
(A) contient des cellules avec valeurs chiffrées + couleur, et une autre
(B) des cellules contenant du texte.
Existe-t-il un moyen de compter le nombre de lignes qui contiennent à la
fois une cellule de couleur verte (colonne A) et la valeur "tel mot"
(colonne B) ?

D'avance merci pour votre aide,

Régis







Avatar
Régis
Bonsoir,

J'ai modifié la macro comme ci-dessous et ... ça fonctionne !
J'ai juste enlever "Plage" car pour mon problème, les colonnes (D et E) et
le nombre de lignes maximum sont connus.
Voilà:

Sub test_eba()
Dim c As Range, Ctr As Long
For Each c In Range("D1:E600")
If c.Interior.ColorIndex = 4 And c.Offset(0, 1) = "initial" Then
Ctr = Ctr + 1
End If
Next c
MsgBox Ctr
End Sub

Encore merci Daniel,

Régis

"Régis" <rgo1012@(suppr)hotmail.com> a écrit dans le message de news:
%23m%
Merci pour ton aide Daniel.
Malheureusement, pour le moment, ça ne fonctionne pas.
En effet, la MsgBox indique systématiquement "0" (même lorsque j'enlève
"And c.Offset(0, 1) = "tel mot"" et que je m'assure qu'il y a bien des
cellules dont "Interior.ColorIndex = 4").
Je n'y connais rien en vba mais ne faut-il pas initialiser c ou(et) Ctr ?

D'avance merci

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

Bonjour.
Essaie :

Sub test()
Dim c As Range, Plage As Range, Ctr As Long
Set Plage = Range("A1", Range("A65536").End(xlUp))
For Each c In Plage
If c.Interior.ColorIndex = 4 And c.Offset(0, 1) = "tel mot" Then
Ctr = Ctr + 1
End If
Next c
MsgBox Ctr
End Sub

Cordialement.
Daniel
"Aerak" <rgo1012(supp_ceci)@hotmail.com> a écrit dans le message de news:
uyrjY%
Bonjour,

Dans une feuille de calcul (excel XP), j'ai plusieurs colonnes dont une
(A) contient des cellules avec valeurs chiffrées + couleur, et une autre
(B) des cellules contenant du texte.
Existe-t-il un moyen de compter le nombre de lignes qui contiennent à la
fois une cellule de couleur verte (colonne A) et la valeur "tel mot"
(colonne B) ?

D'avance merci pour votre aide,

Régis