No sabiendo qué tipo de base de datos usas ni la estructura de tus tablas es difícil dar una respuesta acertada pero podrías intentar algo así:
Utiliza un TQuery para hacer una consulta SQL que te devuelva sólo los registros deseados:
Código SQL
[-]
select * from discos where numero_cd >=
rimero and numero_cd <= ultimo
Esoy suponiendo que tu tabla se llam "discos" y que "numero_cd" es el nombre del campo que tiene el número de cd.
En esta consulta, prmero y ultimo serán parámetros (indicado por los dos puntos ":" anteriores). Cada vez que quieras copiar los registros estableces el rango llenando los parámetros:
Código Delphi
[-]
Query.ParamByName('primero').AsInteger := primer número
Query.ParamByName('ultimo').AsInteger := último número
Query.Open;
Con esto, en Query tendrás todos los registros cuyo número de cd va del primero al último.
Para copiarlos a la otra tabla sólo tienes que recorrer el query con un ciclo:
Código Delphi
[-]
Query.First;
while not Query.Eof do
begin
Tabla.Append;
Tabla.FieldByName('numero_cd').AsInteger := Query.FieldByName('numero_cd').AsInteger;
Query.Next;
end;
// Saludos