Bienvenido
Tortuguica.
Debes usar FindComponent como te sugiere
ecfisa (si es que el formulario es el dueño de los componentes que creas en tiempo de ejecución), ya que los
moldes de tipo como el que intentabas no realizan operaciones de búsqueda, son simplemente para tratar un bloque de memoria bajo la forma que tenga una clase o tipo diferente.
Sólo cambiaría la sentencia:
Código Delphi
[-]pedido:= Copy((Sender as TSpeedButton).Name, 3 ,Length((Sender as TSpeedButton).Name));
por:
Código Delphi
[-]pedido:= Copy((Sender as TSpeedButton).Name, 3, MaxInt);
Saludos.
Al González.