No tenés nada que agradecer, hoy por vos mañana por mi...
Se puede usar
Reset dentro de un for, lo que sucede que es de lo más ineficiente ya que abrir y cerrar archivos consume tiempo y recursos.
Te agrego un ejemplo donde se hace y aprovecho a usar otro modo para verificar la existencia del archivo.
Código Delphi
[-]
...
begin
Assign(Partidas,'Resultados de las partidas.chess');
try
Reset(Partidas);
except
Rewrite(Partidas);
end;
Write('cuantos datos de partidas va a ingresar?: ');
Readln(NEntradas);
for I := 1 to NEntradas do
begin
{$I-} Reset(Partidas); if IOResult <> 0 then ReWrite(Partidas); {$I+} Write('Blancas:');
Readln(Juego.Blancas);
Write('Negras:');
Readln(Juego.Negras);
Write('Anyo:');
Readln(Juego.Anyo);
Write('Resultado:');
Readln(Juego.Resultado);
Seek(Partidas,FileSize(Partidas)); Write(Partidas,Juego); Close(Partidas); end;
...
Fijate que use el procedimiento
Seek para que no sobreescriba los registros.
Saludos.