Bonjour...
J´ai déja vu pas mal de solutions pour NB.Si! Mais malheureusement je ne
trouve pas ma solution..:((
J´ai sur ma feuille:
B1=12
A2=10
A3=15
A4=11
A5, vide B5=10
A6=7
A7=8
A8,vide B8=13
A9=12
A10=14
Ce que je cherche comme résultats:
C1=NB.SI(A2:A4;critére c´est <B1)=2
C5=NB.SI(A6:A7;critére c´est <B5)=2
C8=NB.SI(A9:A10;critére c´est <B8)=1
Il y a t-il une macro que me me fera ça automatiquement en m´écrivante
directement les résultats sur C1, C5 et C8???!!
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
isabelle
bonjour José,
c'est possible de le faire par une formule :
=NB.SI(A2:A4;"<"&B1)
ou
=SOMMEPROD(($A$2:$A$4<12)*1)
ou bien, comme tu le désire, par une macro :
Sub Macro1() Dim début As Range, fin As String, plg As String, critère As String Set début = Range("A2") For Each c In Range("A3:A" & Range("A65536").End(xlUp).Row + 1) If c = Empty Then fin = Range(c.Address).Offset(-1, 0).Address plg = Range(début.Address & ":" & fin).Address critère = "<" & Range("B" & début.Row - 1) Range(début.Address).Offset(-1, 2).Formula = "=SUMPRODUCT((" & plg & critère & ")*1)" Set début = Range(c.Address).Offset(1, 0) End If Next End Sub
isabelle
Bonjour... J´ai déja vu pas mal de solutions pour NB.Si! Mais malheureusement je ne trouve pas ma solution..:(( J´ai sur ma feuille: B1 A2 A3 A4 A5, vide B5 A6=7 A7=8 A8,vide B8 A9 A10 Ce que je cherche comme résultats: C1=NB.SI(A2:A4;critére c´est <B1)=2 C5=NB.SI(A6:A7;critére c´est <B5)=2 C8=NB.SI(A9:A10;critére c´est <B8)=1
Il y a t-il une macro que me me fera ça automatiquement en m´écrivante directement les résultats sur C1, C5 et C8???!!
Je vous remercie... À plus...;))
bonjour José,
c'est possible de le faire par une formule :
=NB.SI(A2:A4;"<"&B1)
ou
=SOMMEPROD(($A$2:$A$4<12)*1)
ou bien, comme tu le désire, par une macro :
Sub Macro1()
Dim début As Range, fin As String, plg As String, critère As String
Set début = Range("A2")
For Each c In Range("A3:A" & Range("A65536").End(xlUp).Row + 1)
If c = Empty Then
fin = Range(c.Address).Offset(-1, 0).Address
plg = Range(début.Address & ":" & fin).Address
critère = "<" & Range("B" & début.Row - 1)
Range(début.Address).Offset(-1, 2).Formula = "=SUMPRODUCT((" & plg & critère & ")*1)"
Set début = Range(c.Address).Offset(1, 0)
End If
Next
End Sub
isabelle
Bonjour...
J´ai déja vu pas mal de solutions pour NB.Si! Mais malheureusement je ne
trouve pas ma solution..:((
J´ai sur ma feuille:
B1
A2
A3
A4
A5, vide B5
A6=7
A7=8
A8,vide B8
A9
A10
Ce que je cherche comme résultats:
C1=NB.SI(A2:A4;critére c´est <B1)=2
C5=NB.SI(A6:A7;critére c´est <B5)=2
C8=NB.SI(A9:A10;critére c´est <B8)=1
Il y a t-il une macro que me me fera ça automatiquement en m´écrivante
directement les résultats sur C1, C5 et C8???!!
Sub Macro1() Dim début As Range, fin As String, plg As String, critère As String Set début = Range("A2") For Each c In Range("A3:A" & Range("A65536").End(xlUp).Row + 1) If c = Empty Then fin = Range(c.Address).Offset(-1, 0).Address plg = Range(début.Address & ":" & fin).Address critère = "<" & Range("B" & début.Row - 1) Range(début.Address).Offset(-1, 2).Formula = "=SUMPRODUCT((" & plg & critère & ")*1)" Set début = Range(c.Address).Offset(1, 0) End If Next End Sub
isabelle
Bonjour... J´ai déja vu pas mal de solutions pour NB.Si! Mais malheureusement je ne trouve pas ma solution..:(( J´ai sur ma feuille: B1 A2 A3 A4 A5, vide B5 A6=7 A7=8 A8,vide B8 A9 A10 Ce que je cherche comme résultats: C1=NB.SI(A2:A4;critére c´est <B1)=2 C5=NB.SI(A6:A7;critére c´est <B5)=2 C8=NB.SI(A9:A10;critére c´est <B8)=1
Il y a t-il une macro que me me fera ça automatiquement en m´écrivante directement les résultats sur C1, C5 et C8???!!
Je vous remercie... À plus...;))
José Carapito
Merci Isabelle, Ça fonctionne très bien... Vous êtes des pros à ça...;)) Salut!!
"isabelle" wrote:
bonjour José,
c'est possible de le faire par une formule :
=NB.SI(A2:A4;"<"&B1)
ou
=SOMMEPROD(($A$2:$A$4<12)*1)
ou bien, comme tu le désire, par une macro :
Sub Macro1() Dim début As Range, fin As String, plg As String, critère As String Set début = Range("A2") For Each c In Range("A3:A" & Range("A65536").End(xlUp).Row + 1) If c = Empty Then fin = Range(c.Address).Offset(-1, 0).Address plg = Range(début.Address & ":" & fin).Address critère = "<" & Range("B" & début.Row - 1) Range(début.Address).Offset(-1, 2).Formula = "=SUMPRODUCT((" & plg & critère & ")*1)" Set début = Range(c.Address).Offset(1, 0) End If Next End Sub
isabelle
Bonjour... J´ai déja vu pas mal de solutions pour NB.Si! Mais malheureusement je ne trouve pas ma solution..:(( J´ai sur ma feuille: B1 A2 A3 A4 A5, vide B5 A6=7 A7=8 A8,vide B8 A9 A10 Ce que je cherche comme résultats: C1=NB.SI(A2:A4;critére c´est <B1)=2 C5=NB.SI(A6:A7;critére c´est <B5)=2 C8=NB.SI(A9:A10;critére c´est <B8)=1
Il y a t-il une macro que me me fera ça automatiquement en m´écrivante directement les résultats sur C1, C5 et C8???!!
Je vous remercie... À plus...;))
Merci Isabelle,
Ça fonctionne très bien...
Vous êtes des pros à ça...;))
Salut!!
"isabelle" wrote:
bonjour José,
c'est possible de le faire par une formule :
=NB.SI(A2:A4;"<"&B1)
ou
=SOMMEPROD(($A$2:$A$4<12)*1)
ou bien, comme tu le désire, par une macro :
Sub Macro1()
Dim début As Range, fin As String, plg As String, critère As String
Set début = Range("A2")
For Each c In Range("A3:A" & Range("A65536").End(xlUp).Row + 1)
If c = Empty Then
fin = Range(c.Address).Offset(-1, 0).Address
plg = Range(début.Address & ":" & fin).Address
critère = "<" & Range("B" & début.Row - 1)
Range(début.Address).Offset(-1, 2).Formula = "=SUMPRODUCT((" & plg & critère & ")*1)"
Set début = Range(c.Address).Offset(1, 0)
End If
Next
End Sub
isabelle
Bonjour...
J´ai déja vu pas mal de solutions pour NB.Si! Mais malheureusement je ne
trouve pas ma solution..:((
J´ai sur ma feuille:
B1
A2
A3
A4
A5, vide B5
A6=7
A7=8
A8,vide B8
A9
A10
Ce que je cherche comme résultats:
C1=NB.SI(A2:A4;critére c´est <B1)=2
C5=NB.SI(A6:A7;critére c´est <B5)=2
C8=NB.SI(A9:A10;critére c´est <B8)=1
Il y a t-il une macro que me me fera ça automatiquement en m´écrivante
directement les résultats sur C1, C5 et C8???!!
Merci Isabelle, Ça fonctionne très bien... Vous êtes des pros à ça...;)) Salut!!
"isabelle" wrote:
bonjour José,
c'est possible de le faire par une formule :
=NB.SI(A2:A4;"<"&B1)
ou
=SOMMEPROD(($A$2:$A$4<12)*1)
ou bien, comme tu le désire, par une macro :
Sub Macro1() Dim début As Range, fin As String, plg As String, critère As String Set début = Range("A2") For Each c In Range("A3:A" & Range("A65536").End(xlUp).Row + 1) If c = Empty Then fin = Range(c.Address).Offset(-1, 0).Address plg = Range(début.Address & ":" & fin).Address critère = "<" & Range("B" & début.Row - 1) Range(début.Address).Offset(-1, 2).Formula = "=SUMPRODUCT((" & plg & critère & ")*1)" Set début = Range(c.Address).Offset(1, 0) End If Next End Sub
isabelle
Bonjour... J´ai déja vu pas mal de solutions pour NB.Si! Mais malheureusement je ne trouve pas ma solution..:(( J´ai sur ma feuille: B1 A2 A3 A4 A5, vide B5 A6=7 A7=8 A8,vide B8 A9 A10 Ce que je cherche comme résultats: C1=NB.SI(A2:A4;critére c´est <B1)=2 C5=NB.SI(A6:A7;critére c´est <B5)=2 C8=NB.SI(A9:A10;critére c´est <B8)=1
Il y a t-il une macro que me me fera ça automatiquement en m´écrivante directement les résultats sur C1, C5 et C8???!!
Je vous remercie... À plus...;))
José Carapito
Oupssss... J´ai remarquai que si jamais il y a le nombre "0" sur l´une des plages, la macro ne marche plus...:(( Y-a-t il une solution pour cela?! Merci... Á plus
"José Carapito" wrote:
Merci Isabelle, Ça fonctionne très bien... Vous êtes des pros à ça...;)) Salut!!
"isabelle" wrote:
bonjour José,
c'est possible de le faire par une formule :
=NB.SI(A2:A4;"<"&B1)
ou
=SOMMEPROD(($A$2:$A$4<12)*1)
ou bien, comme tu le désire, par une macro :
Sub Macro1() Dim début As Range, fin As String, plg As String, critère As String Set début = Range("A2") For Each c In Range("A3:A" & Range("A65536").End(xlUp).Row + 1) If c = Empty Then fin = Range(c.Address).Offset(-1, 0).Address plg = Range(début.Address & ":" & fin).Address critère = "<" & Range("B" & début.Row - 1) Range(début.Address).Offset(-1, 2).Formula = "=SUMPRODUCT((" & plg & critère & ")*1)" Set début = Range(c.Address).Offset(1, 0) End If Next End Sub
isabelle
Bonjour... J´ai déja vu pas mal de solutions pour NB.Si! Mais malheureusement je ne trouve pas ma solution..:(( J´ai sur ma feuille: B1 A2 A3 A4 A5, vide B5 A6=7 A7=8 A8,vide B8 A9 A10 Ce que je cherche comme résultats: C1=NB.SI(A2:A4;critére c´est <B1)=2 C5=NB.SI(A6:A7;critére c´est <B5)=2 C8=NB.SI(A9:A10;critére c´est <B8)=1
Il y a t-il une macro que me me fera ça automatiquement en m´écrivante directement les résultats sur C1, C5 et C8???!!
Je vous remercie... À plus...;))
Oupssss...
J´ai remarquai que si jamais il y a le nombre "0" sur l´une des plages, la
macro ne marche plus...:((
Y-a-t il une solution pour cela?!
Merci...
Á plus
"José Carapito" wrote:
Merci Isabelle,
Ça fonctionne très bien...
Vous êtes des pros à ça...;))
Salut!!
"isabelle" wrote:
bonjour José,
c'est possible de le faire par une formule :
=NB.SI(A2:A4;"<"&B1)
ou
=SOMMEPROD(($A$2:$A$4<12)*1)
ou bien, comme tu le désire, par une macro :
Sub Macro1()
Dim début As Range, fin As String, plg As String, critère As String
Set début = Range("A2")
For Each c In Range("A3:A" & Range("A65536").End(xlUp).Row + 1)
If c = Empty Then
fin = Range(c.Address).Offset(-1, 0).Address
plg = Range(début.Address & ":" & fin).Address
critère = "<" & Range("B" & début.Row - 1)
Range(début.Address).Offset(-1, 2).Formula = "=SUMPRODUCT((" & plg & critère & ")*1)"
Set début = Range(c.Address).Offset(1, 0)
End If
Next
End Sub
isabelle
Bonjour...
J´ai déja vu pas mal de solutions pour NB.Si! Mais malheureusement je ne
trouve pas ma solution..:((
J´ai sur ma feuille:
B1
A2
A3
A4
A5, vide B5
A6=7
A7=8
A8,vide B8
A9
A10
Ce que je cherche comme résultats:
C1=NB.SI(A2:A4;critére c´est <B1)=2
C5=NB.SI(A6:A7;critére c´est <B5)=2
C8=NB.SI(A9:A10;critére c´est <B8)=1
Il y a t-il une macro que me me fera ça automatiquement en m´écrivante
directement les résultats sur C1, C5 et C8???!!
Oupssss... J´ai remarquai que si jamais il y a le nombre "0" sur l´une des plages, la macro ne marche plus...:(( Y-a-t il une solution pour cela?! Merci... Á plus
"José Carapito" wrote:
Merci Isabelle, Ça fonctionne très bien... Vous êtes des pros à ça...;)) Salut!!
"isabelle" wrote:
bonjour José,
c'est possible de le faire par une formule :
=NB.SI(A2:A4;"<"&B1)
ou
=SOMMEPROD(($A$2:$A$4<12)*1)
ou bien, comme tu le désire, par une macro :
Sub Macro1() Dim début As Range, fin As String, plg As String, critère As String Set début = Range("A2") For Each c In Range("A3:A" & Range("A65536").End(xlUp).Row + 1) If c = Empty Then fin = Range(c.Address).Offset(-1, 0).Address plg = Range(début.Address & ":" & fin).Address critère = "<" & Range("B" & début.Row - 1) Range(début.Address).Offset(-1, 2).Formula = "=SUMPRODUCT((" & plg & critère & ")*1)" Set début = Range(c.Address).Offset(1, 0) End If Next End Sub
isabelle
Bonjour... J´ai déja vu pas mal de solutions pour NB.Si! Mais malheureusement je ne trouve pas ma solution..:(( J´ai sur ma feuille: B1 A2 A3 A4 A5, vide B5 A6=7 A7=8 A8,vide B8 A9 A10 Ce que je cherche comme résultats: C1=NB.SI(A2:A4;critére c´est <B1)=2 C5=NB.SI(A6:A7;critére c´est <B5)=2 C8=NB.SI(A9:A10;critére c´est <B8)=1
Il y a t-il une macro que me me fera ça automatiquement en m´écrivante directement les résultats sur C1, C5 et C8???!!
Je vous remercie... À plus...;))
isabelle
il faudrait ajouter une condition à cette ligne,
If c = Empty Then
remplacer par :
If c = Empty Or c = 0 Then
isabelle
Oupssss... J´ai remarquai que si jamais il y a le nombre "0" sur l´une des plages, la macro ne marche plus...:(( Y-a-t il une solution pour cela?! Merci... Á plus
"José Carapito" wrote:
Merci Isabelle, Ça fonctionne très bien... Vous êtes des pros à ça...;)) Salut!!
"isabelle" wrote:
bonjour José,
c'est possible de le faire par une formule :
=NB.SI(A2:A4;"<"&B1)
ou
=SOMMEPROD(($A$2:$A$4<12)*1)
ou bien, comme tu le désire, par une macro :
Sub Macro1() Dim début As Range, fin As String, plg As String, critère As String Set début = Range("A2") For Each c In Range("A3:A" & Range("A65536").End(xlUp).Row + 1) If c = Empty Then fin = Range(c.Address).Offset(-1, 0).Address plg = Range(début.Address & ":" & fin).Address critère = "<" & Range("B" & début.Row - 1) Range(début.Address).Offset(-1, 2).Formula = "=SUMPRODUCT((" & plg & critère & ")*1)" Set début = Range(c.Address).Offset(1, 0) End If Next End Sub
isabelle
Bonjour... J´ai déja vu pas mal de solutions pour NB.Si! Mais malheureusement je ne trouve pas ma solution..:(( J´ai sur ma feuille: B1 A2 A3 A4 A5, vide B5 A6=7 A7=8 A8,vide B8 A9 A10 Ce que je cherche comme résultats: C1=NB.SI(A2:A4;critére c´est <B1)=2 C5=NB.SI(A6:A7;critére c´est <B5)=2 C8=NB.SI(A9:A10;critére c´est <B8)=1
Il y a t-il une macro que me me fera ça automatiquement en m´écrivante directement les résultats sur C1, C5 et C8???!!
Je vous remercie... À plus...;))
il faudrait ajouter une condition à cette ligne,
If c = Empty Then
remplacer par :
If c = Empty Or c = 0 Then
isabelle
Oupssss...
J´ai remarquai que si jamais il y a le nombre "0" sur l´une des plages, la
macro ne marche plus...:((
Y-a-t il une solution pour cela?!
Merci...
Á plus
"José Carapito" wrote:
Merci Isabelle,
Ça fonctionne très bien...
Vous êtes des pros à ça...;))
Salut!!
"isabelle" wrote:
bonjour José,
c'est possible de le faire par une formule :
=NB.SI(A2:A4;"<"&B1)
ou
=SOMMEPROD(($A$2:$A$4<12)*1)
ou bien, comme tu le désire, par une macro :
Sub Macro1()
Dim début As Range, fin As String, plg As String, critère As String
Set début = Range("A2")
For Each c In Range("A3:A" & Range("A65536").End(xlUp).Row + 1)
If c = Empty Then
fin = Range(c.Address).Offset(-1, 0).Address
plg = Range(début.Address & ":" & fin).Address
critère = "<" & Range("B" & début.Row - 1)
Range(début.Address).Offset(-1, 2).Formula = "=SUMPRODUCT((" & plg & critère & ")*1)"
Set début = Range(c.Address).Offset(1, 0)
End If
Next
End Sub
isabelle
Bonjour...
J´ai déja vu pas mal de solutions pour NB.Si! Mais malheureusement je ne
trouve pas ma solution..:((
J´ai sur ma feuille:
B1
A2
A3
A4
A5, vide B5
A6=7
A7=8
A8,vide B8
A9
A10
Ce que je cherche comme résultats:
C1=NB.SI(A2:A4;critére c´est <B1)=2
C5=NB.SI(A6:A7;critére c´est <B5)=2
C8=NB.SI(A9:A10;critére c´est <B8)=1
Il y a t-il une macro que me me fera ça automatiquement en m´écrivante
directement les résultats sur C1, C5 et C8???!!
Oupssss... J´ai remarquai que si jamais il y a le nombre "0" sur l´une des plages, la macro ne marche plus...:(( Y-a-t il une solution pour cela?! Merci... Á plus
"José Carapito" wrote:
Merci Isabelle, Ça fonctionne très bien... Vous êtes des pros à ça...;)) Salut!!
"isabelle" wrote:
bonjour José,
c'est possible de le faire par une formule :
=NB.SI(A2:A4;"<"&B1)
ou
=SOMMEPROD(($A$2:$A$4<12)*1)
ou bien, comme tu le désire, par une macro :
Sub Macro1() Dim début As Range, fin As String, plg As String, critère As String Set début = Range("A2") For Each c In Range("A3:A" & Range("A65536").End(xlUp).Row + 1) If c = Empty Then fin = Range(c.Address).Offset(-1, 0).Address plg = Range(début.Address & ":" & fin).Address critère = "<" & Range("B" & début.Row - 1) Range(début.Address).Offset(-1, 2).Formula = "=SUMPRODUCT((" & plg & critère & ")*1)" Set début = Range(c.Address).Offset(1, 0) End If Next End Sub
isabelle
Bonjour... J´ai déja vu pas mal de solutions pour NB.Si! Mais malheureusement je ne trouve pas ma solution..:(( J´ai sur ma feuille: B1 A2 A3 A4 A5, vide B5 A6=7 A7=8 A8,vide B8 A9 A10 Ce que je cherche comme résultats: C1=NB.SI(A2:A4;critére c´est <B1)=2 C5=NB.SI(A6:A7;critére c´est <B5)=2 C8=NB.SI(A9:A10;critére c´est <B8)=1
Il y a t-il une macro que me me fera ça automatiquement en m´écrivante directement les résultats sur C1, C5 et C8???!!