Public Function FindText(Text As Variant, X1 As Integer, Y1 As Integer, X2 As Integer, Y2 As Integer) As Range Dim Indice1 As Integer Dim Indice2 As Integer Dim X As Integer Dim Y As Integer X = X2 - X1 'définition de la longueur de la plage Y = Y2 - Y1 'définitin de la largeur de la plage Cells(X1, Y1).Select 'on sélectionne la 1ere case de notre plage Indice1 = 0 While Indice1 <= X 'on sort si on dépasse la longueur de plage Indice2 = 0 While Indice2 <= Y ' on sort si on dépasse la largeur de plage If ActiveCell.Text = Text Then 'Si le text est trouvé FindText = ActiveCell.Range 'on retourne l'@ de la case Indice2 = Y + 1 'on sort de la 2eme boucle Indice1 = X + 1 'on sort de la 1ere boucle Else ActiveCell.Offset(1, 0).Select 'on descent d'1 cases Indice2 = Indice2 + 1 End If Wend ActiveCell.Offset(0, 1).Select 'on bouge d'1 case a droite Indice1 = Indice1 + 1 Wend FindText = Nothing 'si on a pas trouver on retourne nothing End Function