Muchas gracias Guillotmarc por tu respuesta, pero a pesar de verla un montón de veces no era capaz de hacerle funcionar: me empeñaba en meterle paréntesis, dos puntos y comillas por todas partes.
Al final volví a ver tu mensaje y lo ví clarito. Pongo el código por si alguien tuviese el mismo problema.
Código:
// SqlText:='SELECT Descripcion FROM Codigos WHERE (Tipo='+QuotedStr(Tipo)+' AND Codigo='+QuotedStr(Codigo)+')';
ADOQuery3.SQL.Clear;
ADOQuery3.SQL.Add('Exec BuscarDescripcionCodigo '+Tipo+', '+Codigo);
try
ADOQuery3.Open;
Saludos a todos.