Créer une fonction CRITERE
Résolu
-
-
-
Bonjour,
Je voudrais créer une fonction qui réponde à cette syntaxe :
L'objectif est entre autres de pouvoir faire varier l'opérateur.
Ça pourrait donner, par exemple :
où B1 contient l'opérateur ">" et C1 la valeur "3".
Je précise que je n'y connais rien en VBA.
Merci. :)
Je voudrais créer une fonction qui réponde à cette syntaxe :
=CRITERE(opérateur;valeur)
L'objectif est entre autres de pouvoir faire varier l'opérateur.
Ça pourrait donner, par exemple :
=NB.SI(A1:A5;CRITERE(B1;C1))
où B1 contient l'opérateur ">" et C1 la valeur "3".
Je précise que je n'y connais rien en VBA.
Merci. :)
A voir également:
- Créer une fonction CRITERE
- Fonction si et - Guide
- Comment créer un groupe whatsapp - Guide
- Créer un compte google - Guide
- Créer une adresse hotmail - Guide
- Créer un lien pour partager des photos - Guide
5 réponses
Bonjour
Peut être ceci, mais je ne vois toujours pas où tu veux en venir
Cdlmnt
Peut être ceci, mais je ne vois toujours pas où tu veux en venir
Public Function test(ech, ope As String, ref) As Boolean
Dim ok As Boolean
ok = False
Select Case ope
Case "=": If ech = ref Then ok = True
Case ">": If ech > ref Then ok = True
Case ">=": If ech = ref Then ok = True
Case "<": If ech < ref Then ok = True
Case "<=": If ech <= ref Then ok = True
End Select
test = ok
End Function
Cdlmnt
Bonjour tout le monde,
Une réponse m'a été apportée par ailleurs :
Merci de m'avoir accordé de votre temps !
Bon dimanche,
Une réponse m'a été apportée par ailleurs :
Function test(échantillon, opérateur, valeur)
Dim r(), i, v, nc
nc = Application.Caller.Columns.Count
If échantillon.Count = 1 Then
test = Evaluate(Replace(échantillon & opérateur & valeur, ",", "."))
Else
i = -1
For Each v In échantillon
i = i + 1
ReDim Preserve r(i)
r(i) = Evaluate(Replace(v & opérateur & valeur, ",", "."))
Next v
If nc = 1 Then test = Application.Transpose(r) Else test = r
End If
End Function
Merci de m'avoir accordé de votre temps !
Bon dimanche,
Bonjour,
Bien que je ne voie pas la finalité ... voici la fonction personnelle correspondante :
Fonction à placer dans un module standard.
A+
Bien que je ne voie pas la finalité ... voici la fonction personnelle correspondante :
Function CRITERE(opérateur As String, valeur As String) As String
CRITERE = opérateur & valeur
End Function
Fonction à placer dans un module standard.
A+
Bonjour
Utilisation dans la feuille
=NB.SI($A$2:$A$11;critere("<";2))
Mais c'est bien compliquer pour pas grand chose
Cdlmnt
Public Function critere(operation As String, valeur) As String
critere = operation & valeur
End Function
Utilisation dans la feuille
=NB.SI($A$2:$A$11;critere("<";2))
Mais c'est bien compliquer pour pas grand chose
Cdlmnt
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question