Bonjour Alex,
Tu peux obtenir le résultat sans macro :
Adapte les plages de cellules. Elles doivent avoir le même
nombre de lignes.
=SOMMEPROD((B1:B10="D")*(A1:A10="98Y00")*(A1:C10="P1")*(D1:D10< =1)*(D1:D10))
Veux-tu obtenir le résultat en VBA ?
"Alex" a écrit dans le message de groupe de discussi on :
Bonjour,
Je viens à vous, car je rencontre un problème avec la fonction NB.SI
avec 4 conditions que j'ai tenté de mettre dans une boucle.
Ce que je voulais, c'est obtenir le nombre de ligne d'une liste en
prenant comme conditions les arguments suivants :
Si en colonne B, la cellule a pour valeur "D"
et qu'en colonne A, la cellule a pour valeur "98Y00"
et qu'en colonne C, la cellule a pour valeur "P1"
alors
somme si en colonne D, la cellule a pour valeur <= 1
Ma macro :
Sub Compt()
Dim nbligne As Long
i = nbligne
nbligne = Range("a2").CurrentRegion.Rows.Count
For i = nbligne To 2 Step -1
If Cells(i, 2).Value = "D" Then
ElseIf Cells(i, 1).Value = "98y00" Then
ElseIf Cells(i, 3).Value = "P1" Then
ElseIf Cells(i,4).Value >= 1 Then
Range("F1").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(C[ -2],"">=1"")"
Else: End If
Next i
End Sub
Au lieu d'obtenir, le résultat escompté, j'obtiens à chaque fois le
nombre de ligne superieur ou égal à 1 de ma colonne D, sans prise en
compte de mes conditions.
Je ne sais plus quoi faire, dois je abondonné la boucle ou est ce ma
formule de calcul qui n'est pas adaptée ?
Je vous remercie par avance, de votre aide.
Cordialement.
Alex
Bonjour Alex,
Tu peux obtenir le résultat sans macro :
Adapte les plages de cellules. Elles doivent avoir le même
nombre de lignes.
=SOMMEPROD((B1:B10="D")*(A1:A10="98Y00")*(A1:C10="P1")*(D1:D10< =1)*(D1:D10))
Veux-tu obtenir le résultat en VBA ?
"Alex" <ale...@orange.fr> a écrit dans le message de groupe de discussi on :
21aa8dce-0d8d-428d-8c98-bd11ad851...@o31g2000vbi.googlegroups.com...
Bonjour,
Je viens à vous, car je rencontre un problème avec la fonction NB.SI
avec 4 conditions que j'ai tenté de mettre dans une boucle.
Ce que je voulais, c'est obtenir le nombre de ligne d'une liste en
prenant comme conditions les arguments suivants :
Si en colonne B, la cellule a pour valeur "D"
et qu'en colonne A, la cellule a pour valeur "98Y00"
et qu'en colonne C, la cellule a pour valeur "P1"
alors
somme si en colonne D, la cellule a pour valeur <= 1
Ma macro :
Sub Compt()
Dim nbligne As Long
i = nbligne
nbligne = Range("a2").CurrentRegion.Rows.Count
For i = nbligne To 2 Step -1
If Cells(i, 2).Value = "D" Then
ElseIf Cells(i, 1).Value = "98y00" Then
ElseIf Cells(i, 3).Value = "P1" Then
ElseIf Cells(i,4).Value >= 1 Then
Range("F1").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(C[ -2],"">=1"")"
Else: End If
Next i
End Sub
Au lieu d'obtenir, le résultat escompté, j'obtiens à chaque fois le
nombre de ligne superieur ou égal à 1 de ma colonne D, sans prise en
compte de mes conditions.
Je ne sais plus quoi faire, dois je abondonné la boucle ou est ce ma
formule de calcul qui n'est pas adaptée ?
Je vous remercie par avance, de votre aide.
Cordialement.
Alex
Bonjour Alex,
Tu peux obtenir le résultat sans macro :
Adapte les plages de cellules. Elles doivent avoir le même
nombre de lignes.
=SOMMEPROD((B1:B10="D")*(A1:A10="98Y00")*(A1:C10="P1")*(D1:D10< =1)*(D1:D10))
Veux-tu obtenir le résultat en VBA ?
"Alex" a écrit dans le message de groupe de discussi on :
Bonjour,
Je viens à vous, car je rencontre un problème avec la fonction NB.SI
avec 4 conditions que j'ai tenté de mettre dans une boucle.
Ce que je voulais, c'est obtenir le nombre de ligne d'une liste en
prenant comme conditions les arguments suivants :
Si en colonne B, la cellule a pour valeur "D"
et qu'en colonne A, la cellule a pour valeur "98Y00"
et qu'en colonne C, la cellule a pour valeur "P1"
alors
somme si en colonne D, la cellule a pour valeur <= 1
Ma macro :
Sub Compt()
Dim nbligne As Long
i = nbligne
nbligne = Range("a2").CurrentRegion.Rows.Count
For i = nbligne To 2 Step -1
If Cells(i, 2).Value = "D" Then
ElseIf Cells(i, 1).Value = "98y00" Then
ElseIf Cells(i, 3).Value = "P1" Then
ElseIf Cells(i,4).Value >= 1 Then
Range("F1").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(C[ -2],"">=1"")"
Else: End If
Next i
End Sub
Au lieu d'obtenir, le résultat escompté, j'obtiens à chaque fois le
nombre de ligne superieur ou égal à 1 de ma colonne D, sans prise en
compte de mes conditions.
Je ne sais plus quoi faire, dois je abondonné la boucle ou est ce ma
formule de calcul qui n'est pas adaptée ?
Je vous remercie par avance, de votre aide.
Cordialement.
Alex
La formule était faite pour être inscrite dans une cellule !
Et si tu veux compter le nombre de ligne, modifie la formule
comme suit :
J'ai seulement enlevé la dernière condition
=SOMMEPROD((B1:B10="D")*(A1:A10="98Y00")*(A1:C10="P1")*(D1:D10< =1))
"Alex" a écrit dans le message de groupe de discussi on :
Re ou plutôt Bonsoir,
Je reviens à vous car, j'ai tenté avec une autre solution pour que
s'inscrive Vrai ou Faux en colonne E si les conditions étaient
respecté, puis de me compter les lignes avec vrai en E.
Mon problème persiste dans ma formule de calcul j'obtiens 0.
Voici ma Macro corrigée :
Sub Compt()
Dim nbligne As Long
i = nbligne
nbligne = Range("A2").CurrentRegion.Rows.Count
For i = nbligne To 2 Step -1
If Cells(i, 2).Value = "D" And Cells(i, 1).Value = "98y00" An d
Cells(i, 3).Value = "P1" And Cells(i, 4).Value >= 1 Then
Cells(i, 5).Value = "VRAI"
Else
Cells(i, 5).Value = "FAUX"
End If
Next i
Range("F1").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(C[-1],""=VRAI"")"
End Sub
Je suis pronneur des solutions des deux cas, s'il y a ?
Merci encore par avance de votre aide. Je continue de mon côté
Cordialement.
La formule était faite pour être inscrite dans une cellule !
Et si tu veux compter le nombre de ligne, modifie la formule
comme suit :
J'ai seulement enlevé la dernière condition
=SOMMEPROD((B1:B10="D")*(A1:A10="98Y00")*(A1:C10="P1")*(D1:D10< =1))
"Alex" <ale...@orange.fr> a écrit dans le message de groupe de discussi on :
ed9b1bc2-65b2-41fe-a3b2-2702c2e21...@r31g2000vbi.googlegroups.com...
Re ou plutôt Bonsoir,
Je reviens à vous car, j'ai tenté avec une autre solution pour que
s'inscrive Vrai ou Faux en colonne E si les conditions étaient
respecté, puis de me compter les lignes avec vrai en E.
Mon problème persiste dans ma formule de calcul j'obtiens 0.
Voici ma Macro corrigée :
Sub Compt()
Dim nbligne As Long
i = nbligne
nbligne = Range("A2").CurrentRegion.Rows.Count
For i = nbligne To 2 Step -1
If Cells(i, 2).Value = "D" And Cells(i, 1).Value = "98y00" An d
Cells(i, 3).Value = "P1" And Cells(i, 4).Value >= 1 Then
Cells(i, 5).Value = "VRAI"
Else
Cells(i, 5).Value = "FAUX"
End If
Next i
Range("F1").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(C[-1],""=VRAI"")"
End Sub
Je suis pronneur des solutions des deux cas, s'il y a ?
Merci encore par avance de votre aide. Je continue de mon côté
Cordialement.
La formule était faite pour être inscrite dans une cellule !
Et si tu veux compter le nombre de ligne, modifie la formule
comme suit :
J'ai seulement enlevé la dernière condition
=SOMMEPROD((B1:B10="D")*(A1:A10="98Y00")*(A1:C10="P1")*(D1:D10< =1))
"Alex" a écrit dans le message de groupe de discussi on :
Re ou plutôt Bonsoir,
Je reviens à vous car, j'ai tenté avec une autre solution pour que
s'inscrive Vrai ou Faux en colonne E si les conditions étaient
respecté, puis de me compter les lignes avec vrai en E.
Mon problème persiste dans ma formule de calcul j'obtiens 0.
Voici ma Macro corrigée :
Sub Compt()
Dim nbligne As Long
i = nbligne
nbligne = Range("A2").CurrentRegion.Rows.Count
For i = nbligne To 2 Step -1
If Cells(i, 2).Value = "D" And Cells(i, 1).Value = "98y00" An d
Cells(i, 3).Value = "P1" And Cells(i, 4).Value >= 1 Then
Cells(i, 5).Value = "VRAI"
Else
Cells(i, 5).Value = "FAUX"
End If
Next i
Range("F1").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(C[-1],""=VRAI"")"
End Sub
Je suis pronneur des solutions des deux cas, s'il y a ?
Merci encore par avance de votre aide. Je continue de mon côté
Cordialement.
En VBA, la même formule donnerait ceci :
Tu adaptes le nom de la feuille et des plages de cellules.
'-------------------------------------
Sub test()
Dim X As String
With Worksheets("Feuil1")
X = "SUMPRODUCT((" & .Name & "!B1:B10=""D"")" & _
"*(" & .Name & "!A1:A10=""98Y00"")" & _
"*(" & .Name & "!A1:C10=""P1"")" & _
"*(" & .Name & "!D1:D10<=1))"
MsgBox Evaluate(X)
End With
End Sub
'-------------------------------------
"michdenis" a écrit dans le message de groupe d e discussion :
ei6#
La formule était faite pour être inscrite dans une cellule !
Et si tu veux compter le nombre de ligne, modifie la formule
comme suit :
J'ai seulement enlevé la dernière condition
=SOMMEPROD((B1:B10="D")*(A1:A10="98Y00")*(A1:C10="P1")*(D1:D10< =1))
"Alex" a écrit dans le message de groupe de discussi on :
Re ou plutôt Bonsoir,
Je reviens à vous car, j'ai tenté avec une autre solution pour que
s'inscrive Vrai ou Faux en colonne E si les conditions étaient
respecté, puis de me compter les lignes avec vrai en E.
Mon problème persiste dans ma formule de calcul j'obtiens 0.
Voici ma Macro corrigée :
Sub Compt()
Dim nbligne As Long
i = nbligne
nbligne = Range("A2").CurrentRegion.Rows.Count
For i = nbligne To 2 Step -1
If Cells(i, 2).Value = "D" And Cells(i, 1).Value = "98y00" An d
Cells(i, 3).Value = "P1" And Cells(i, 4).Value >= 1 Then
Cells(i, 5).Value = "VRAI"
Else
Cells(i, 5).Value = "FAUX"
End If
Next i
Range("F1").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(C[-1],""=VRAI"")"
End Sub
Je suis pronneur des solutions des deux cas, s'il y a ?
Merci encore par avance de votre aide. Je continue de mon côté
Cordialement.
En VBA, la même formule donnerait ceci :
Tu adaptes le nom de la feuille et des plages de cellules.
'-------------------------------------
Sub test()
Dim X As String
With Worksheets("Feuil1")
X = "SUMPRODUCT((" & .Name & "!B1:B10=""D"")" & _
"*(" & .Name & "!A1:A10=""98Y00"")" & _
"*(" & .Name & "!A1:C10=""P1"")" & _
"*(" & .Name & "!D1:D10<=1))"
MsgBox Evaluate(X)
End With
End Sub
'-------------------------------------
"michdenis" <michde...@hotmail.com> a écrit dans le message de groupe d e discussion :
ei6#NvUbKHA.1...@TK2MSFTNGP05.phx.gbl...
La formule était faite pour être inscrite dans une cellule !
Et si tu veux compter le nombre de ligne, modifie la formule
comme suit :
J'ai seulement enlevé la dernière condition
=SOMMEPROD((B1:B10="D")*(A1:A10="98Y00")*(A1:C10="P1")*(D1:D10< =1))
"Alex" <ale...@orange.fr> a écrit dans le message de groupe de discussi on :
ed9b1bc2-65b2-41fe-a3b2-2702c2e21...@r31g2000vbi.googlegroups.com...
Re ou plutôt Bonsoir,
Je reviens à vous car, j'ai tenté avec une autre solution pour que
s'inscrive Vrai ou Faux en colonne E si les conditions étaient
respecté, puis de me compter les lignes avec vrai en E.
Mon problème persiste dans ma formule de calcul j'obtiens 0.
Voici ma Macro corrigée :
Sub Compt()
Dim nbligne As Long
i = nbligne
nbligne = Range("A2").CurrentRegion.Rows.Count
For i = nbligne To 2 Step -1
If Cells(i, 2).Value = "D" And Cells(i, 1).Value = "98y00" An d
Cells(i, 3).Value = "P1" And Cells(i, 4).Value >= 1 Then
Cells(i, 5).Value = "VRAI"
Else
Cells(i, 5).Value = "FAUX"
End If
Next i
Range("F1").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(C[-1],""=VRAI"")"
End Sub
Je suis pronneur des solutions des deux cas, s'il y a ?
Merci encore par avance de votre aide. Je continue de mon côté
Cordialement.
En VBA, la même formule donnerait ceci :
Tu adaptes le nom de la feuille et des plages de cellules.
'-------------------------------------
Sub test()
Dim X As String
With Worksheets("Feuil1")
X = "SUMPRODUCT((" & .Name & "!B1:B10=""D"")" & _
"*(" & .Name & "!A1:A10=""98Y00"")" & _
"*(" & .Name & "!A1:C10=""P1"")" & _
"*(" & .Name & "!D1:D10<=1))"
MsgBox Evaluate(X)
End With
End Sub
'-------------------------------------
"michdenis" a écrit dans le message de groupe d e discussion :
ei6#
La formule était faite pour être inscrite dans une cellule !
Et si tu veux compter le nombre de ligne, modifie la formule
comme suit :
J'ai seulement enlevé la dernière condition
=SOMMEPROD((B1:B10="D")*(A1:A10="98Y00")*(A1:C10="P1")*(D1:D10< =1))
"Alex" a écrit dans le message de groupe de discussi on :
Re ou plutôt Bonsoir,
Je reviens à vous car, j'ai tenté avec une autre solution pour que
s'inscrive Vrai ou Faux en colonne E si les conditions étaient
respecté, puis de me compter les lignes avec vrai en E.
Mon problème persiste dans ma formule de calcul j'obtiens 0.
Voici ma Macro corrigée :
Sub Compt()
Dim nbligne As Long
i = nbligne
nbligne = Range("A2").CurrentRegion.Rows.Count
For i = nbligne To 2 Step -1
If Cells(i, 2).Value = "D" And Cells(i, 1).Value = "98y00" An d
Cells(i, 3).Value = "P1" And Cells(i, 4).Value >= 1 Then
Cells(i, 5).Value = "VRAI"
Else
Cells(i, 5).Value = "FAUX"
End If
Next i
Range("F1").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(C[-1],""=VRAI"")"
End Sub
Je suis pronneur des solutions des deux cas, s'il y a ?
Merci encore par avance de votre aide. Je continue de mon côté
Cordialement.
On 24 nov, 22:26, "michdenis" wrote:
> En VBA, la même formule donnerait ceci :
> Tu adaptes le nom de la feuille et des plages de cellules.
> '-------------------------------------
> Sub test()
> Dim X As String
> With Worksheets("Feuil1")
> X = "SUMPRODUCT((" & .Name & "!B1:B10=""D"")" & _
> "*(" & .Name & "!A1:A10=""98Y00"")" & _
> "*(" & .Name & "!A1:C10=""P1"")" & _
> "*(" & .Name & "!D1:D10<=1))"
> MsgBox Evaluate(X)
> End With
> End Sub
> '-------------------------------------
> "michdenis" a écrit dans le message de groupe de discussion :
> ei6#
> La formule était faite pour être inscrite dans une cellule !
> Et si tu veux compter le nombre de ligne, modifie la formule
> comme suit :
> J'ai seulement enlevé la dernière condition
> =SOMMEPROD((B1:B10="D")*(A1:A10="98Y00")*(A1:C10="P1")*(D1:D10< =1))
> "Alex" a écrit dans le message de groupe de discus sion :
>
> Re ou plutôt Bonsoir,
> Je reviens à vous car, j'ai tenté avec une autre solution pour que
> s'inscrive Vrai ou Faux en colonne E si les conditions étaient
> respecté, puis de me compter les lignes avec vrai en E.
> Mon problème persiste dans ma formule de calcul j'obtiens 0.
> Voici ma Macro corrigée :
> Sub Compt()
> Dim nbligne As Long
> i = nbligne
> nbligne = Range("A2").CurrentRegion.Rows.Count
> For i = nbligne To 2 Step -1
> If Cells(i, 2).Value = "D" And Cells(i, 1).Value = "98y00" And
> Cells(i, 3).Value = "P1" And Cells(i, 4).Value >= 1 Then
> Cells(i, 5).Value = "VRAI"
> Else
> Cells(i, 5).Value = "FAUX"
> End If
> Next i
> Range("F1").Select
> ActiveCell.FormulaR1C1 = "=COUNTIF(C[-1],""=VRAI"")"
> End Sub
> Je suis pronneur des solutions des deux cas, s'il y a ?
> Merci encore par avance de votre aide. Je continue de mon côté
> Cordialement.
Encore une fois un Grand Merci à Denis.
Bonne soirée.
Alex- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
On 24 nov, 22:26, "michdenis" <michde...@hotmail.com> wrote:
> En VBA, la même formule donnerait ceci :
> Tu adaptes le nom de la feuille et des plages de cellules.
> '-------------------------------------
> Sub test()
> Dim X As String
> With Worksheets("Feuil1")
> X = "SUMPRODUCT((" & .Name & "!B1:B10=""D"")" & _
> "*(" & .Name & "!A1:A10=""98Y00"")" & _
> "*(" & .Name & "!A1:C10=""P1"")" & _
> "*(" & .Name & "!D1:D10<=1))"
> MsgBox Evaluate(X)
> End With
> End Sub
> '-------------------------------------
> "michdenis" <michde...@hotmail.com> a écrit dans le message de groupe de discussion :
> ei6#NvUbKHA.1...@TK2MSFTNGP05.phx.gbl...
> La formule était faite pour être inscrite dans une cellule !
> Et si tu veux compter le nombre de ligne, modifie la formule
> comme suit :
> J'ai seulement enlevé la dernière condition
> =SOMMEPROD((B1:B10="D")*(A1:A10="98Y00")*(A1:C10="P1")*(D1:D10< =1))
> "Alex" <ale...@orange.fr> a écrit dans le message de groupe de discus sion :
> ed9b1bc2-65b2-41fe-a3b2-2702c2e21...@r31g2000vbi.googlegroups.com...
> Re ou plutôt Bonsoir,
> Je reviens à vous car, j'ai tenté avec une autre solution pour que
> s'inscrive Vrai ou Faux en colonne E si les conditions étaient
> respecté, puis de me compter les lignes avec vrai en E.
> Mon problème persiste dans ma formule de calcul j'obtiens 0.
> Voici ma Macro corrigée :
> Sub Compt()
> Dim nbligne As Long
> i = nbligne
> nbligne = Range("A2").CurrentRegion.Rows.Count
> For i = nbligne To 2 Step -1
> If Cells(i, 2).Value = "D" And Cells(i, 1).Value = "98y00" And
> Cells(i, 3).Value = "P1" And Cells(i, 4).Value >= 1 Then
> Cells(i, 5).Value = "VRAI"
> Else
> Cells(i, 5).Value = "FAUX"
> End If
> Next i
> Range("F1").Select
> ActiveCell.FormulaR1C1 = "=COUNTIF(C[-1],""=VRAI"")"
> End Sub
> Je suis pronneur des solutions des deux cas, s'il y a ?
> Merci encore par avance de votre aide. Je continue de mon côté
> Cordialement.
Encore une fois un Grand Merci à Denis.
Bonne soirée.
Alex- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
On 24 nov, 22:26, "michdenis" wrote:
> En VBA, la même formule donnerait ceci :
> Tu adaptes le nom de la feuille et des plages de cellules.
> '-------------------------------------
> Sub test()
> Dim X As String
> With Worksheets("Feuil1")
> X = "SUMPRODUCT((" & .Name & "!B1:B10=""D"")" & _
> "*(" & .Name & "!A1:A10=""98Y00"")" & _
> "*(" & .Name & "!A1:C10=""P1"")" & _
> "*(" & .Name & "!D1:D10<=1))"
> MsgBox Evaluate(X)
> End With
> End Sub
> '-------------------------------------
> "michdenis" a écrit dans le message de groupe de discussion :
> ei6#
> La formule était faite pour être inscrite dans une cellule !
> Et si tu veux compter le nombre de ligne, modifie la formule
> comme suit :
> J'ai seulement enlevé la dernière condition
> =SOMMEPROD((B1:B10="D")*(A1:A10="98Y00")*(A1:C10="P1")*(D1:D10< =1))
> "Alex" a écrit dans le message de groupe de discus sion :
>
> Re ou plutôt Bonsoir,
> Je reviens à vous car, j'ai tenté avec une autre solution pour que
> s'inscrive Vrai ou Faux en colonne E si les conditions étaient
> respecté, puis de me compter les lignes avec vrai en E.
> Mon problème persiste dans ma formule de calcul j'obtiens 0.
> Voici ma Macro corrigée :
> Sub Compt()
> Dim nbligne As Long
> i = nbligne
> nbligne = Range("A2").CurrentRegion.Rows.Count
> For i = nbligne To 2 Step -1
> If Cells(i, 2).Value = "D" And Cells(i, 1).Value = "98y00" And
> Cells(i, 3).Value = "P1" And Cells(i, 4).Value >= 1 Then
> Cells(i, 5).Value = "VRAI"
> Else
> Cells(i, 5).Value = "FAUX"
> End If
> Next i
> Range("F1").Select
> ActiveCell.FormulaR1C1 = "=COUNTIF(C[-1],""=VRAI"")"
> End Sub
> Je suis pronneur des solutions des deux cas, s'il y a ?
> Merci encore par avance de votre aide. Je continue de mon côté
> Cordialement.
Encore une fois un Grand Merci à Denis.
Bonne soirée.
Alex- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -
Bonjour,
Je viens à vous, car je rencontre un problème avec la fonction NB.SI
avec 4 conditions que j'ai tenté de mettre dans une boucle.
Ce que je voulais, c'est obtenir le nombre de ligne d'une liste en
prenant comme conditions les arguments suivants :
Si en colonne B, la cellule a pour valeur "D"
et qu'en colonne A, la cellule a pour valeur "98Y00"
et qu'en colonne C, la cellule a pour valeur "P1"
alors
somme si en colonne D, la cellule a pour valeur <= 1
Ma macro :
Sub Compt()
Dim nbligne As Long
i = nbligne
nbligne = Range("a2").CurrentRegion.Rows.Count
For i = nbligne To 2 Step -1
If Cells(i, 2).Value = "D" Then
ElseIf Cells(i, 1).Value = "98y00" Then
ElseIf Cells(i, 3).Value = "P1" Then
ElseIf Cells(i,4).Value >= 1 Then
Range("F1").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(C[-2],"">=1"")"
Else: End If
Next i
End Sub
Au lieu d'obtenir, le résultat escompté, j'obtiens à chaque fois le
nombre de ligne superieur ou égal à 1 de ma colonne D, sans prise en
compte de mes conditions.
Je ne sais plus quoi faire, dois je abondonné la boucle ou est ce ma
formule de calcul qui n'est pas adaptée ?
Je vous remercie par avance, de votre aide.
Cordialement.
Alex
Bonjour,
Je viens à vous, car je rencontre un problème avec la fonction NB.SI
avec 4 conditions que j'ai tenté de mettre dans une boucle.
Ce que je voulais, c'est obtenir le nombre de ligne d'une liste en
prenant comme conditions les arguments suivants :
Si en colonne B, la cellule a pour valeur "D"
et qu'en colonne A, la cellule a pour valeur "98Y00"
et qu'en colonne C, la cellule a pour valeur "P1"
alors
somme si en colonne D, la cellule a pour valeur <= 1
Ma macro :
Sub Compt()
Dim nbligne As Long
i = nbligne
nbligne = Range("a2").CurrentRegion.Rows.Count
For i = nbligne To 2 Step -1
If Cells(i, 2).Value = "D" Then
ElseIf Cells(i, 1).Value = "98y00" Then
ElseIf Cells(i, 3).Value = "P1" Then
ElseIf Cells(i,4).Value >= 1 Then
Range("F1").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(C[-2],"">=1"")"
Else: End If
Next i
End Sub
Au lieu d'obtenir, le résultat escompté, j'obtiens à chaque fois le
nombre de ligne superieur ou égal à 1 de ma colonne D, sans prise en
compte de mes conditions.
Je ne sais plus quoi faire, dois je abondonné la boucle ou est ce ma
formule de calcul qui n'est pas adaptée ?
Je vous remercie par avance, de votre aide.
Cordialement.
Alex
Bonjour,
Je viens à vous, car je rencontre un problème avec la fonction NB.SI
avec 4 conditions que j'ai tenté de mettre dans une boucle.
Ce que je voulais, c'est obtenir le nombre de ligne d'une liste en
prenant comme conditions les arguments suivants :
Si en colonne B, la cellule a pour valeur "D"
et qu'en colonne A, la cellule a pour valeur "98Y00"
et qu'en colonne C, la cellule a pour valeur "P1"
alors
somme si en colonne D, la cellule a pour valeur <= 1
Ma macro :
Sub Compt()
Dim nbligne As Long
i = nbligne
nbligne = Range("a2").CurrentRegion.Rows.Count
For i = nbligne To 2 Step -1
If Cells(i, 2).Value = "D" Then
ElseIf Cells(i, 1).Value = "98y00" Then
ElseIf Cells(i, 3).Value = "P1" Then
ElseIf Cells(i,4).Value >= 1 Then
Range("F1").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(C[-2],"">=1"")"
Else: End If
Next i
End Sub
Au lieu d'obtenir, le résultat escompté, j'obtiens à chaque fois le
nombre de ligne superieur ou égal à 1 de ma colonne D, sans prise en
compte de mes conditions.
Je ne sais plus quoi faire, dois je abondonné la boucle ou est ce ma
formule de calcul qui n'est pas adaptée ?
Je vous remercie par avance, de votre aide.
Cordialement.
Alex