Hola. Los caracteres '%' sirven para hacer un filtro, pero desde SQL. En el codigo que estas poniendo te esta comparando exactamente la cadena '%VALOR%'. Tendrias, o bien hacer una busqueda con el 'where' en una sentencia select
Código Delphi
[-]
query1->Active = False;
query1->SQL->Text = "select * from tabla where campo like " + QuotedStr("%" + Edit1->Text + "%");
query1->Active = True;
o bien, segun tu codigo actual, en vez de comparar, usar el Pos(...), que te busca una cadena dentro de otra. Saludos.