cathodique
XLDnaute Barbatruc
Bonjour,
Je ne suis pas très fort en fonction. On m'avait aidé pour la fonction ci-dessous.
Aujourd'hui, mon besoin est de la rendre générique par rapport à un critère que je voudrais rendre variable.
Dans le code, il y a coord(2)="Ad" (pour info coord est un élément d'un collection se trouvant dans la procédure appelante de la fonction). je voudrais pourvoir réutiliser cette fonction pour n'importe quel autre mot ou lettres. En vous remerciant par avance.
Je ne suis pas très fort en fonction. On m'avait aidé pour la fonction ci-dessous.
Aujourd'hui, mon besoin est de la rendre générique par rapport à un critère que je voudrais rendre variable.
Dans le code, il y a coord(2)="Ad" (pour info coord est un élément d'un collection se trouvant dans la procédure appelante de la fonction). je voudrais pourvoir réutiliser cette fonction pour n'importe quel autre mot ou lettres. En vous remerciant par avance.
VB:
Function Compter_Cd(coord1 As Variant, coord2 As Variant, Optional BonneAnnee As Variant = Null, Optional CritereAnnee As String = "=") As Long
Dim i As Long, compteur As Long
compteur = 0
For i = 1 To UBound(Tbg)
If Tbg(i, 7) = coord1 And Tbg(i, 5) = coord2 And coord2 = "Cd" Then
' Si un critère sur l'année est spécifié, appliquer ce critère
If Not IsNull(BonneAnnee) Then
Select Case CritereAnnee
Case "="
If year(Tbg(i, 1)) = BonneAnnee Then compteur = compteur + 1
Case "<"
If year(Tbg(i, 1)) < BonneAnnee Then compteur = compteur + 1
Case ">"
If year(Tbg(i, 1)) > BonneAnnee Then compteur = compteur + 1
End Select
Else
compteur = compteur + 1
End If
End If
Next i
Compter_Cd = compteur
End Function