Exemples en VBA :
Sub AppelFonctions()
Dim Msg As String
Msg = "validé"
If Not CellValide(Range("D8:F8"), "ok", 2) Then Msg = "non " & Msg
MsgBox Msg
'-----------------------------
Msg = "validé"
If Not CellValide2(Range("D8:F8"), "ok", 2) Then Msg = "non " & Msg
MsgBox Msg
End Sub
Function CellValide(Target As Range, What As String, Number As Integer) As Boolean
If Target.Cells.Count > 1 Then CellValide = Application.WorksheetFunction.CountIf(Target, What) = Number
End Function
Function CellValide2(Target As Range, What As String, Number As Integer) As Boolean
Dim R As Range, cpt As Long
For Each R In Target
If R.Value = What Then cpt = cpt + 1
Next
CellValide2 = cpt = Number
End Function