procedure TForm1.ReplaceDialog1Replace(Sender: TObject); var SelPos: Integer; begin with TReplaceDialog(Sender) do begin { Exécute une recherche globale en tenant compte des majuscules/minuscules pour FindText dans Memo1 } SelPos := Pos(FindText, RichEdit1.Lines.Text); if SelPos > 0 then begin RichEdit1.SelStart := SelPos - 1; RichEdit1.SelLength := Length(FindText); { Remplace le texte sélectionné par ReplaceText } RichEdit1.SelText := ReplaceText; end else MessageDlg(Concat('Impossible de trouver "', FindText, '" dans RichEdit1.'), mtError, [mbOk], 0); end; end;