Par exemple tu fais une fonction comme celle ci (par exemple bien sûr) :
Public Function Rechercher(String1 As String, String2 As String, MotEntier As Boolean, RespectCase As Boolean, debut As Long) As Long
On Error GoTo Fuck1 ' erreur motentier=Null
If MotEntier = True Then
On Error GoTo Fuck2 ' erreur RespectCase=Null
If RespectCase = True Then
On Error GoTo Fuck3 ' erreur strings=null
Rechercher = InStr(debut, UCase(Chr(0) & String1 & Chr(0)), UCase(Chr(0) & String2 & Chr(0)))
Else
Rechercher = InStr(debut, Chr(0) & String1 & Chr(0), Chr(0) & String2 & Chr(0))
End If
On Error GoTo Fuck1 ' erreur motentier=Null
Else
On Error GoTo Fuck2 ' erreur RespectCase=Null
If RespectCase = True Then
On Error GoTo Fuck3 ' erreur strings=null
Rechercher = InStr(debut, UCase(String1), UCase(String2))
Else
Rechercher = InStr(debut, String1, String2)
End If
End If
Exit Function
Fuck1:
MsgBox "Mot Entier n'a pas de valeur", 16, "Erreur : Fuck1"
Exit Function
Fuck2:
MsgBox "Respecte Case n'a pas de valeur", 16, "Erreur : Fuck2"
Exit Function
Fuck3:
MsgBox "String1 ou string2 n'est pas une string ou debut est égale à 0", 16, "Erreur : Fuck2"
End Function
En fait Fuck1 est le premier label et des qu'il y a une erreur ca vas directement a ce label grace a "On error goto Fuck1
Pareil pourles autres Fuck
N'ayant point VbA tester ce code ( il marche sous vb6 ) :-p