Re
pourquoi ne pas effectuer ton test conditionnel avant, par exemple en chargeant les valeurs de la plage dans un tableau en excluant les valeurs < ou = à 0, et ensuite tu utilises la fonction pour faire ta recherche.
As-tu un fichier exemple ?
A+
pourquoi ne pas effectuer ton test conditionnel avant, par exemple en chargeant les valeurs de la plage dans un tableau en excluant les valeurs < ou = à 0, et ensuite tu utilises la fonction pour faire ta recherche.
Sub Test()
Dim Tableau(), I As Integer, J As Integer
For I = 1 To 5
If Range("A" & I) > 0 Then
ReDim Preserve Tableau(J)
Tableau(J) = Range("A" & I).Value
J = J + 1
End If
Next I
MsgBox Application.WorksheetFunction.Min(Tableau)
End Sub
Bonne soirée
PS : c'est beau la communeauté de pensé
Finalement, suite à ton MP, c'est toi qui aura le dernier mot ...
Effectivement, j'avais toujours fui la fonction Evaluate (qui peut être syntaxée []), car je la trouve un peu imprécise, mais Ce lien n'existe plusque tu m'as envoyé m'a permis de tester, et effectivement, dans ce cas de figure, le code devrait encore mieux convenir à vivi4561 ...
Code:
Sub Test()
MsgBox [MIN(IF((A1:A7>0)*(A1:A7),(A1:A7)))]
End Sub
Re
pas sûr de te comprendre (le VBA c'est nouveau pour moi) mais :
Code:
Sub test2()
x = [MIN(IF((A1:A7>0)*(A1:A7),(A1:A7)))]
MsgBox x
End Sub
te ramène bien 10...
Quel type de variable veux-tu récupérer ? Si c'est une variable Tableau, c'est vrai qu'avec Evaluate, cela est plus compliqué mais le tuto indiqué par JNP te donne une solution, sinon le plus simple est de placer ton exemple sur le fichier que tu as posté en expliquant ce que tu cherches à faire.
A+
Re, salut JNP,
Quelle type de données as-tu en AF53:AF55 ? es-tu sûr que ce sont des nombres ?
As-tu vérifié leur format ?
Peut-être à côté de la plaque mais au cas où, extrait de l'aide d'Excel :
Les arguments qui comportent des valeurs d'erreur ou du texte qui ne peuvent pas être convertis en nombres génèrent des erreurs.
Pour inclure des valeurs logiques et des transcriptions textuelles de nombres dans une référence dans le cadre du calcul, utilisez la fonction MINA.