Définir une plage de cellule avec N° de ligne variable
13 réponses
ManBas
Bonsoir à nouveau,
Par macro je voudrais compter (boucle) le nombre de cellules contenant "x",
pour une ligne donnée, des colonnes B à U.
Ma difficulté c'est de définir la plage de cellule, car la ligne n'est
jamais la même.
Le N° de ligne peut par exemple être défini par ligne=ActiveCell.Row
Mais dans ce cas comment écrire l'équivalent de
For Each Cellule in Range ("Aligne:Bligne").
Merci de votre aide
For Each Cellule In Range("B" & ActiveCell.Row & ":U" & ActiveCell.Row)
A+ Benead XL2000
ManBas a écrit:
Bonsoir à nouveau, Par macro je voudrais compter (boucle) le nombre de cellules contenant "x", pour une ligne donnée, des colonnes B à U. Ma difficulté c'est de définir la plage de cellule, car la ligne n'est jamais la même. Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row Mais dans ce cas comment écrire l'équivalent de For Each Cellule in Range ("Aligne:Bligne"). Merci de votre aide
Bonsoir ManBas,
Par exemple comme ceci :
For Each Cellule In Range("B" & ActiveCell.Row & ":U" & ActiveCell.Row)
A+
Benead
XL2000
ManBas a écrit:
Bonsoir à nouveau,
Par macro je voudrais compter (boucle) le nombre de cellules contenant "x",
pour une ligne donnée, des colonnes B à U.
Ma difficulté c'est de définir la plage de cellule, car la ligne n'est
jamais la même.
Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row
Mais dans ce cas comment écrire l'équivalent de
For Each Cellule in Range ("Aligne:Bligne").
Merci de votre aide
For Each Cellule In Range("B" & ActiveCell.Row & ":U" & ActiveCell.Row)
A+ Benead XL2000
ManBas a écrit:
Bonsoir à nouveau, Par macro je voudrais compter (boucle) le nombre de cellules contenant "x", pour une ligne donnée, des colonnes B à U. Ma difficulté c'est de définir la plage de cellule, car la ligne n'est jamais la même. Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row Mais dans ce cas comment écrire l'équivalent de For Each Cellule in Range ("Aligne:Bligne"). Merci de votre aide
...Patrick
Salut, ceci devrait compter:
Sub CompteX() Dim Cel, Compte Dim MaLigne MaLigne = ActiveCell.Row For Each Cel In Range("B" & MaLigne & ":" & "U" & MaLigne) If Cel.Value = "x" Then Compte = Compte + 1 Next MsgBox (Compte) End Sub
...Patrick
"ManBas" a écrit dans le message de news:
Bonsoir à nouveau, Par macro je voudrais compter (boucle) le nombre de cellules contenant "x", pour une ligne donnée, des colonnes B à U. Ma difficulté c'est de définir la plage de cellule, car la ligne n'est jamais la même. Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row Mais dans ce cas comment écrire l'équivalent de For Each Cellule in Range ("Aligne:Bligne"). Merci de votre aide
Salut,
ceci devrait compter:
Sub CompteX()
Dim Cel, Compte
Dim MaLigne
MaLigne = ActiveCell.Row
For Each Cel In Range("B" & MaLigne & ":" & "U" & MaLigne)
If Cel.Value = "x" Then Compte = Compte + 1
Next
MsgBox (Compte)
End Sub
...Patrick
"ManBas" <nonospam-j.ragni@wanadoo.fr> a écrit dans le message de news:
eh5nAfFJGHA.2212@TK2MSFTNGP15.phx.gbl...
Bonsoir à nouveau,
Par macro je voudrais compter (boucle) le nombre de cellules contenant
"x", pour une ligne donnée, des colonnes B à U.
Ma difficulté c'est de définir la plage de cellule, car la ligne n'est
jamais la même.
Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row
Mais dans ce cas comment écrire l'équivalent de
For Each Cellule in Range ("Aligne:Bligne").
Merci de votre aide
Sub CompteX() Dim Cel, Compte Dim MaLigne MaLigne = ActiveCell.Row For Each Cel In Range("B" & MaLigne & ":" & "U" & MaLigne) If Cel.Value = "x" Then Compte = Compte + 1 Next MsgBox (Compte) End Sub
...Patrick
"ManBas" a écrit dans le message de news:
Bonsoir à nouveau, Par macro je voudrais compter (boucle) le nombre de cellules contenant "x", pour une ligne donnée, des colonnes B à U. Ma difficulté c'est de définir la plage de cellule, car la ligne n'est jamais la même. Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row Mais dans ce cas comment écrire l'équivalent de For Each Cellule in Range ("Aligne:Bligne"). Merci de votre aide
LSteph
Re,
'''*** Sub test() Dim c As Range, lig As Long, cpt As Byte lig = ActiveCell.Row For Each c In Range("B" & lig, "U" & lig).Cells If LCase(c) Like "*x*" Then cpt = cpt + 1 Next MsgBox "Dans la plage de B à U de la ligne" & lig & _ vbCrLf & cpt & " cellules contiennent au moins un x"
End Sub '''***
'lSteph
"ManBas" a écrit dans le message de news:
Bonsoir à nouveau, Par macro je voudrais compter (boucle) le nombre de cellules contenant "x", pour une ligne donnée, des colonnes B à U. Ma difficulté c'est de définir la plage de cellule, car la ligne n'est jamais la même. Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row Mais dans ce cas comment écrire l'équivalent de For Each Cellule in Range ("Aligne:Bligne"). Merci de votre aide
Re,
'''***
Sub test()
Dim c As Range, lig As Long, cpt As Byte
lig = ActiveCell.Row
For Each c In Range("B" & lig, "U" & lig).Cells
If LCase(c) Like "*x*" Then cpt = cpt + 1
Next
MsgBox "Dans la plage de B à U de la ligne" & lig & _
vbCrLf & cpt & " cellules contiennent au moins un x"
End Sub
'''***
'lSteph
"ManBas" <nonospam-j.ragni@wanadoo.fr> a écrit dans le message de news:
eh5nAfFJGHA.2212@TK2MSFTNGP15.phx.gbl...
Bonsoir à nouveau,
Par macro je voudrais compter (boucle) le nombre de cellules contenant
"x", pour une ligne donnée, des colonnes B à U.
Ma difficulté c'est de définir la plage de cellule, car la ligne n'est
jamais la même.
Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row
Mais dans ce cas comment écrire l'équivalent de
For Each Cellule in Range ("Aligne:Bligne").
Merci de votre aide
'''*** Sub test() Dim c As Range, lig As Long, cpt As Byte lig = ActiveCell.Row For Each c In Range("B" & lig, "U" & lig).Cells If LCase(c) Like "*x*" Then cpt = cpt + 1 Next MsgBox "Dans la plage de B à U de la ligne" & lig & _ vbCrLf & cpt & " cellules contiennent au moins un x"
End Sub '''***
'lSteph
"ManBas" a écrit dans le message de news:
Bonsoir à nouveau, Par macro je voudrais compter (boucle) le nombre de cellules contenant "x", pour une ligne donnée, des colonnes B à U. Ma difficulté c'est de définir la plage de cellule, car la ligne n'est jamais la même. Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row Mais dans ce cas comment écrire l'équivalent de For Each Cellule in Range ("Aligne:Bligne"). Merci de votre aide
ManBas
Rahhhh!!! le ":" je n'y avait pas pensé!!! Le diable se tient dans un détail!! Merci beaucoup à tous les deux. Bonsoir et à bientôt.
"...Patrick" a écrit dans le message de news: %
Salut, ceci devrait compter:
Sub CompteX() Dim Cel, Compte Dim MaLigne MaLigne = ActiveCell.Row For Each Cel In Range("B" & MaLigne & ":" & "U" & MaLigne) If Cel.Value = "x" Then Compte = Compte + 1 Next MsgBox (Compte) End Sub
...Patrick
"ManBas" a écrit dans le message de news:
Bonsoir à nouveau, Par macro je voudrais compter (boucle) le nombre de cellules contenant "x", pour une ligne donnée, des colonnes B à U. Ma difficulté c'est de définir la plage de cellule, car la ligne n'est jamais la même. Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row Mais dans ce cas comment écrire l'équivalent de For Each Cellule in Range ("Aligne:Bligne"). Merci de votre aide
Rahhhh!!! le ":" je n'y avait pas pensé!!!
Le diable se tient dans un détail!!
Merci beaucoup à tous les deux.
Bonsoir et à bientôt.
"...Patrick" <NOSPAMMMMM.pmac_kay@hotmail.com> a écrit dans le message de
news: %236IMntFJGHA.3700@TK2MSFTNGP15.phx.gbl...
Salut,
ceci devrait compter:
Sub CompteX()
Dim Cel, Compte
Dim MaLigne
MaLigne = ActiveCell.Row
For Each Cel In Range("B" & MaLigne & ":" & "U" & MaLigne)
If Cel.Value = "x" Then Compte = Compte + 1
Next
MsgBox (Compte)
End Sub
...Patrick
"ManBas" <nonospam-j.ragni@wanadoo.fr> a écrit dans le message de news:
eh5nAfFJGHA.2212@TK2MSFTNGP15.phx.gbl...
Bonsoir à nouveau,
Par macro je voudrais compter (boucle) le nombre de cellules contenant
"x", pour une ligne donnée, des colonnes B à U.
Ma difficulté c'est de définir la plage de cellule, car la ligne n'est
jamais la même.
Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row
Mais dans ce cas comment écrire l'équivalent de
For Each Cellule in Range ("Aligne:Bligne").
Merci de votre aide
Rahhhh!!! le ":" je n'y avait pas pensé!!! Le diable se tient dans un détail!! Merci beaucoup à tous les deux. Bonsoir et à bientôt.
"...Patrick" a écrit dans le message de news: %
Salut, ceci devrait compter:
Sub CompteX() Dim Cel, Compte Dim MaLigne MaLigne = ActiveCell.Row For Each Cel In Range("B" & MaLigne & ":" & "U" & MaLigne) If Cel.Value = "x" Then Compte = Compte + 1 Next MsgBox (Compte) End Sub
...Patrick
"ManBas" a écrit dans le message de news:
Bonsoir à nouveau, Par macro je voudrais compter (boucle) le nombre de cellules contenant "x", pour une ligne donnée, des colonnes B à U. Ma difficulté c'est de définir la plage de cellule, car la ligne n'est jamais la même. Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row Mais dans ce cas comment écrire l'équivalent de For Each Cellule in Range ("Aligne:Bligne"). Merci de votre aide
Lionel
Bonsoir ManBas,
Pourquoi chercher midi à quatorze heures quand il est minuit ;-)
Bonsoir à nouveau, Par macro je voudrais compter (boucle) le nombre de cellules contenant "x",
pour une ligne donnée, des colonnes B à U. Ma difficulté c'est de définir la plage de cellule, car la ligne n'est jamais la même. Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row Mais dans ce cas comment écrire l'équivalent de For Each Cellule in Range ("Aligne:Bligne"). Merci de votre aide
Bonsoir ManBas,
Pourquoi chercher midi à quatorze heures quand il est minuit ;-)
"ManBas" <nonospam-j.ragni@wanadoo.fr> a écrit dans le message de
news:eh5nAfFJGHA.2212@TK2MSFTNGP15.phx.gbl...
Bonsoir à nouveau,
Par macro je voudrais compter (boucle) le nombre de cellules contenant
"x",
pour une ligne donnée, des colonnes B à U.
Ma difficulté c'est de définir la plage de cellule, car la ligne n'est
jamais la même.
Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row
Mais dans ce cas comment écrire l'équivalent de
For Each Cellule in Range ("Aligne:Bligne").
Merci de votre aide
Bonsoir à nouveau, Par macro je voudrais compter (boucle) le nombre de cellules contenant "x",
pour une ligne donnée, des colonnes B à U. Ma difficulté c'est de définir la plage de cellule, car la ligne n'est jamais la même. Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row Mais dans ce cas comment écrire l'équivalent de For Each Cellule in Range ("Aligne:Bligne"). Merci de votre aide
LSteph
Bonsoir Lionel, Tout à fait d'accord pour le comptage par countif mais si j'ai bien compris , la question de Manbas qui souhaite faire cela en boucle était surtout le comment écrire l'expression : For Each c In Range("B" & lig, "U" & lig).Cells ou autrement proposé For Each c In Range("B"& lig &":U" & lig).Cells
'lSteph
"Lionel" a écrit dans le message de news: 43dbf804$0$20145$
Bonsoir ManBas,
Pourquoi chercher midi à quatorze heures quand il est minuit ;-)
Bonsoir à nouveau, Par macro je voudrais compter (boucle) le nombre de cellules contenant "x",
pour une ligne donnée, des colonnes B à U. Ma difficulté c'est de définir la plage de cellule, car la ligne n'est jamais la même. Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row Mais dans ce cas comment écrire l'équivalent de For Each Cellule in Range ("Aligne:Bligne"). Merci de votre aide
Bonsoir Lionel,
Tout à fait d'accord pour le comptage par countif
mais si j'ai bien compris , la question
de Manbas qui souhaite faire cela en boucle était
surtout le comment écrire l'expression :
For Each c In Range("B" & lig, "U" & lig).Cells
ou autrement proposé
For Each c In Range("B"& lig &":U" & lig).Cells
'lSteph
"Lionel" <notta.lionel@wanadoo.fr> a écrit dans le message de news:
43dbf804$0$20145$8fcfb975@news.wanadoo.fr...
Bonsoir ManBas,
Pourquoi chercher midi à quatorze heures quand il est minuit ;-)
"ManBas" <nonospam-j.ragni@wanadoo.fr> a écrit dans le message de
news:eh5nAfFJGHA.2212@TK2MSFTNGP15.phx.gbl...
Bonsoir à nouveau,
Par macro je voudrais compter (boucle) le nombre de cellules contenant
"x",
pour une ligne donnée, des colonnes B à U.
Ma difficulté c'est de définir la plage de cellule, car la ligne n'est
jamais la même.
Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row
Mais dans ce cas comment écrire l'équivalent de
For Each Cellule in Range ("Aligne:Bligne").
Merci de votre aide
Bonsoir Lionel, Tout à fait d'accord pour le comptage par countif mais si j'ai bien compris , la question de Manbas qui souhaite faire cela en boucle était surtout le comment écrire l'expression : For Each c In Range("B" & lig, "U" & lig).Cells ou autrement proposé For Each c In Range("B"& lig &":U" & lig).Cells
'lSteph
"Lionel" a écrit dans le message de news: 43dbf804$0$20145$
Bonsoir ManBas,
Pourquoi chercher midi à quatorze heures quand il est minuit ;-)
Bonsoir à nouveau, Par macro je voudrais compter (boucle) le nombre de cellules contenant "x",
pour une ligne donnée, des colonnes B à U. Ma difficulté c'est de définir la plage de cellule, car la ligne n'est jamais la même. Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row Mais dans ce cas comment écrire l'équivalent de For Each Cellule in Range ("Aligne:Bligne"). Merci de votre aide
Lionel
Bonsoir LSteph ;-)
Je suis également d'accord avec toi (en fait, on est tous les deux
Par macro je voudrais compter (boucle) le nombre de cellules contenant "x",
pour **une ligne donnée**, des colonnes B à U.
et donc, je comprend la boucle pour une ligne donnée (soit par colonne). Tu comprends donc (j'en suis sûr) qu'un comptage avec les fonctions des feuilles de calcul soit plus rapide qu'une boucle, non ?
Maintenant, si ManBas souhaite connaître le nombre de cellules contenant un "x", l'appel de fonction est encore plus rapide que la boucle (ce qui est moins évident sur une seule ligne).
Amitiés LSteph Lionel
"LSteph" a écrit dans le message de news:
Bonsoir Lionel, Tout à fait d'accord pour le comptage par countif mais si j'ai bien compris , la question de Manbas qui souhaite faire cela en boucle était surtout le comment écrire l'expression : For Each c In Range("B" & lig, "U" & lig).Cells ou autrement proposé For Each c In Range("B"& lig &":U" & lig).Cells
'lSteph
"Lionel" a écrit dans le message de news: 43dbf804$0$20145$
Bonsoir ManBas,
Pourquoi chercher midi à quatorze heures quand il est minuit ;-)
Bonsoir à nouveau, Par macro je voudrais compter (boucle) le nombre de cellules contenant "x",
pour une ligne donnée, des colonnes B à U. Ma difficulté c'est de définir la plage de cellule, car la ligne n'est jamais la même. Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row Mais dans ce cas comment écrire l'équivalent de For Each Cellule in Range ("Aligne:Bligne"). Merci de votre aide
Bonsoir LSteph ;-)
Je suis également d'accord avec toi (en fait, on est tous les deux
Par macro je voudrais compter (boucle) le nombre de cellules contenant
"x",
pour **une ligne donnée**, des colonnes B à U.
et donc, je comprend la boucle pour une ligne donnée (soit par colonne). Tu
comprends donc (j'en suis sûr) qu'un comptage avec les fonctions des
feuilles de calcul soit plus rapide qu'une boucle, non ?
Maintenant, si ManBas souhaite connaître le nombre de cellules contenant un
"x", l'appel de fonction est encore plus rapide que la boucle (ce qui est
moins évident sur une seule ligne).
Amitiés LSteph
Lionel
"LSteph" <lecocosteph@frite.fr> a écrit dans le message de
news:uYrMeFGJGHA.1424@TK2MSFTNGP12.phx.gbl...
Bonsoir Lionel,
Tout à fait d'accord pour le comptage par countif
mais si j'ai bien compris , la question
de Manbas qui souhaite faire cela en boucle était
surtout le comment écrire l'expression :
For Each c In Range("B" & lig, "U" & lig).Cells
ou autrement proposé
For Each c In Range("B"& lig &":U" & lig).Cells
'lSteph
"Lionel" <notta.lionel@wanadoo.fr> a écrit dans le message de news:
43dbf804$0$20145$8fcfb975@news.wanadoo.fr...
Bonsoir ManBas,
Pourquoi chercher midi à quatorze heures quand il est minuit ;-)
"ManBas" <nonospam-j.ragni@wanadoo.fr> a écrit dans le message de
news:eh5nAfFJGHA.2212@TK2MSFTNGP15.phx.gbl...
Bonsoir à nouveau,
Par macro je voudrais compter (boucle) le nombre de cellules contenant
"x",
pour une ligne donnée, des colonnes B à U.
Ma difficulté c'est de définir la plage de cellule, car la ligne n'est
jamais la même.
Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row
Mais dans ce cas comment écrire l'équivalent de
For Each Cellule in Range ("Aligne:Bligne").
Merci de votre aide
Je suis également d'accord avec toi (en fait, on est tous les deux
Par macro je voudrais compter (boucle) le nombre de cellules contenant "x",
pour **une ligne donnée**, des colonnes B à U.
et donc, je comprend la boucle pour une ligne donnée (soit par colonne). Tu comprends donc (j'en suis sûr) qu'un comptage avec les fonctions des feuilles de calcul soit plus rapide qu'une boucle, non ?
Maintenant, si ManBas souhaite connaître le nombre de cellules contenant un "x", l'appel de fonction est encore plus rapide que la boucle (ce qui est moins évident sur une seule ligne).
Amitiés LSteph Lionel
"LSteph" a écrit dans le message de news:
Bonsoir Lionel, Tout à fait d'accord pour le comptage par countif mais si j'ai bien compris , la question de Manbas qui souhaite faire cela en boucle était surtout le comment écrire l'expression : For Each c In Range("B" & lig, "U" & lig).Cells ou autrement proposé For Each c In Range("B"& lig &":U" & lig).Cells
'lSteph
"Lionel" a écrit dans le message de news: 43dbf804$0$20145$
Bonsoir ManBas,
Pourquoi chercher midi à quatorze heures quand il est minuit ;-)
Bonsoir à nouveau, Par macro je voudrais compter (boucle) le nombre de cellules contenant "x",
pour une ligne donnée, des colonnes B à U. Ma difficulté c'est de définir la plage de cellule, car la ligne n'est jamais la même. Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row Mais dans ce cas comment écrire l'équivalent de For Each Cellule in Range ("Aligne:Bligne"). Merci de votre aide
LSteph
Je suis également d'accord avec toi (en fait, on est tous les deux d'accord).
;o)) Tout à fait d'accord ! Amitiés (itou)
lSteph "Lionel" a écrit dans le message de news: 43dc022a$0$18305$
Bonsoir LSteph ;-)
Je suis également d'accord avec toi (en fait, on est tous les deux
Par macro je voudrais compter (boucle) le nombre de cellules contenant "x",
pour **une ligne donnée**, des colonnes B à U.
et donc, je comprend la boucle pour une ligne donnée (soit par colonne). Tu comprends donc (j'en suis sûr) qu'un comptage avec les fonctions des feuilles de calcul soit plus rapide qu'une boucle, non ?
Maintenant, si ManBas souhaite connaître le nombre de cellules contenant un "x", l'appel de fonction est encore plus rapide que la boucle (ce qui est moins évident sur une seule ligne).
Amitiés LSteph Lionel
"LSteph" a écrit dans le message de news:
Bonsoir Lionel, Tout à fait d'accord pour le comptage par countif mais si j'ai bien compris , la question de Manbas qui souhaite faire cela en boucle était surtout le comment écrire l'expression : For Each c In Range("B" & lig, "U" & lig).Cells ou autrement proposé For Each c In Range("B"& lig &":U" & lig).Cells
'lSteph
"Lionel" a écrit dans le message de news: 43dbf804$0$20145$
Bonsoir ManBas,
Pourquoi chercher midi à quatorze heures quand il est minuit ;-)
Bonsoir à nouveau, Par macro je voudrais compter (boucle) le nombre de cellules contenant "x",
pour une ligne donnée, des colonnes B à U. Ma difficulté c'est de définir la plage de cellule, car la ligne n'est jamais la même. Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row Mais dans ce cas comment écrire l'équivalent de For Each Cellule in Range ("Aligne:Bligne"). Merci de votre aide
Je suis également d'accord avec toi (en fait, on est tous les deux
d'accord).
;o)) Tout à fait d'accord !
Amitiés (itou)
lSteph
"Lionel" <notta.lionel@wanadoo.fr> a écrit dans le message de news:
43dc022a$0$18305$8fcfb975@news.wanadoo.fr...
Bonsoir LSteph ;-)
Je suis également d'accord avec toi (en fait, on est tous les deux
Par macro je voudrais compter (boucle) le nombre de cellules contenant
"x",
pour **une ligne donnée**, des colonnes B à U.
et donc, je comprend la boucle pour une ligne donnée (soit par colonne).
Tu
comprends donc (j'en suis sûr) qu'un comptage avec les fonctions des
feuilles de calcul soit plus rapide qu'une boucle, non ?
Maintenant, si ManBas souhaite connaître le nombre de cellules contenant
un
"x", l'appel de fonction est encore plus rapide que la boucle (ce qui est
moins évident sur une seule ligne).
Amitiés LSteph
Lionel
"LSteph" <lecocosteph@frite.fr> a écrit dans le message de
news:uYrMeFGJGHA.1424@TK2MSFTNGP12.phx.gbl...
Bonsoir Lionel,
Tout à fait d'accord pour le comptage par countif
mais si j'ai bien compris , la question
de Manbas qui souhaite faire cela en boucle était
surtout le comment écrire l'expression :
For Each c In Range("B" & lig, "U" & lig).Cells
ou autrement proposé
For Each c In Range("B"& lig &":U" & lig).Cells
'lSteph
"Lionel" <notta.lionel@wanadoo.fr> a écrit dans le message de news:
43dbf804$0$20145$8fcfb975@news.wanadoo.fr...
Bonsoir ManBas,
Pourquoi chercher midi à quatorze heures quand il est minuit ;-)
"ManBas" <nonospam-j.ragni@wanadoo.fr> a écrit dans le message de
news:eh5nAfFJGHA.2212@TK2MSFTNGP15.phx.gbl...
Bonsoir à nouveau,
Par macro je voudrais compter (boucle) le nombre de cellules contenant
"x",
pour une ligne donnée, des colonnes B à U.
Ma difficulté c'est de définir la plage de cellule, car la ligne n'est
jamais la même.
Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row
Mais dans ce cas comment écrire l'équivalent de
For Each Cellule in Range ("Aligne:Bligne").
Merci de votre aide
Je suis également d'accord avec toi (en fait, on est tous les deux d'accord).
;o)) Tout à fait d'accord ! Amitiés (itou)
lSteph "Lionel" a écrit dans le message de news: 43dc022a$0$18305$
Bonsoir LSteph ;-)
Je suis également d'accord avec toi (en fait, on est tous les deux
Par macro je voudrais compter (boucle) le nombre de cellules contenant "x",
pour **une ligne donnée**, des colonnes B à U.
et donc, je comprend la boucle pour une ligne donnée (soit par colonne). Tu comprends donc (j'en suis sûr) qu'un comptage avec les fonctions des feuilles de calcul soit plus rapide qu'une boucle, non ?
Maintenant, si ManBas souhaite connaître le nombre de cellules contenant un "x", l'appel de fonction est encore plus rapide que la boucle (ce qui est moins évident sur une seule ligne).
Amitiés LSteph Lionel
"LSteph" a écrit dans le message de news:
Bonsoir Lionel, Tout à fait d'accord pour le comptage par countif mais si j'ai bien compris , la question de Manbas qui souhaite faire cela en boucle était surtout le comment écrire l'expression : For Each c In Range("B" & lig, "U" & lig).Cells ou autrement proposé For Each c In Range("B"& lig &":U" & lig).Cells
'lSteph
"Lionel" a écrit dans le message de news: 43dbf804$0$20145$
Bonsoir ManBas,
Pourquoi chercher midi à quatorze heures quand il est minuit ;-)
Bonsoir à nouveau, Par macro je voudrais compter (boucle) le nombre de cellules contenant "x",
pour une ligne donnée, des colonnes B à U. Ma difficulté c'est de définir la plage de cellule, car la ligne n'est jamais la même. Le N° de ligne peut par exemple être défini par ligne¬tiveCell.Row Mais dans ce cas comment écrire l'équivalent de For Each Cellule in Range ("Aligne:Bligne"). Merci de votre aide
danielrv
Bonjour, Où met on cette fonction ???? Merci par avance. Danielrv
Bonjour Daniel, Il s'agit ici de faire cela dans un code VBA c'est donc dans un module . WorksheetFunction.CountIf équivaut à récupérer en VBA la fonction nb.si d'Excel sauf qu'ici NbX = WorksheetFunction.CountIf(Range(Cells(ActiveCell.Row, 2), _ Cells(ActiveCell.Row, 21)), "=*x*") selon la cellule sélectionnée dans la feuille le code va mettre dans NbX la formule suivant la ligne de la cellule active . On peut ensuite par exemple faire afficher le résultat en écrivant dans le code ainsi: Msgbox NbX
Cordialement _ _ 'lSteph "danielrv" a écrit dans le message de news:
Bonjour, Où met on cette fonction ???? Merci par avance. Danielrv
Bonjour Daniel,
Il s'agit ici de faire cela dans un code VBA
c'est donc dans un module .
WorksheetFunction.CountIf
équivaut à récupérer en VBA la fonction nb.si d'Excel
sauf qu'ici
NbX = WorksheetFunction.CountIf(Range(Cells(ActiveCell.Row, 2), _
Cells(ActiveCell.Row, 21)), "=*x*")
selon la cellule sélectionnée dans la feuille le code va mettre dans NbX la
formule suivant la ligne de la cellule active .
On peut ensuite par exemple faire afficher le résultat en écrivant dans le
code ainsi:
Msgbox NbX
Cordialement
_ _
'lSteph
"danielrv" <novice@neuf.fr> a écrit dans le message de news:
uX8iGMLJGHA.1424@TK2MSFTNGP12.phx.gbl...
Bonjour,
Où met on cette fonction ????
Merci par avance.
Danielrv
Bonjour Daniel, Il s'agit ici de faire cela dans un code VBA c'est donc dans un module . WorksheetFunction.CountIf équivaut à récupérer en VBA la fonction nb.si d'Excel sauf qu'ici NbX = WorksheetFunction.CountIf(Range(Cells(ActiveCell.Row, 2), _ Cells(ActiveCell.Row, 21)), "=*x*") selon la cellule sélectionnée dans la feuille le code va mettre dans NbX la formule suivant la ligne de la cellule active . On peut ensuite par exemple faire afficher le résultat en écrivant dans le code ainsi: Msgbox NbX
Cordialement _ _ 'lSteph "danielrv" a écrit dans le message de news:
Bonjour, Où met on cette fonction ???? Merci par avance. Danielrv