Fonction Boucle NB.SI

eRaZz Messages postés 6 Statut Membre -  
eRaZz Messages postés 6 Statut Membre -
Bonjour,

J'aimerai créer une fonction de telle facon qu'elle effectue une boucle en nombre si tant qu'une condition n'est pas remplie.

=NB.SI('BDD'$C:$C;SI(STXT(B4;(i);9)<>"";STXT(B4;(i);9);0))

avec i = 1 puis croissant par multiple de 9. soit 1 9 18 27 ....

Pour l'instant ma fonction donne ceci :

Function loop_coop(v, champRech As Range)

Dim i As Integer
Dim x As Integer

i = 1
x = 1
For i = 1 To 9
For x = 1 To 45

 

  If Mid(v, x, 9) <> "" Then
  
   u = CountIf(champRech, Mid(v, i, 9), 0)
   
   Else
   
   u = "0"
   
  
    
   End If
   u = u - 1 + u
   Next x
   Next u
   Next i
       
   
 End Function


EDIT : Ajout des balises de code (la coloration syntaxique).

Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.
Jordane45

Merci d'avance pour votre aide et n'hésitez pas si vous avez des questions ou si je n'ai pas été assez clair !

1 réponse

  1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831
     
    Bonjour,

    Je confirme.. ce n'est pas très clair :-)

    Déjà :
    u = u - 1 + u
    

    Ben.. u = 2u -1 alors... ?

    Ensuite...

    Tu as 3 NEXT
    Next x
       Next u
       Next i
    

    ... mais je ne vois que deux FOR
    For i = 1 To 9
    For x = 1 To 45
    


    0
    1. eRaZz Messages postés 6 Statut Membre
       
      le u c'est pour additionner les NB.SI a chaque nouveau critère dans la boucle.

      en effet pour le next c'est une erreur mais ca ne me donne pas une formule correcte pour autant...
      0