Hola, esto te muestra los valores de campos de las filas seleccionadas lo demas lo haces tu como dices pasarlo a un archivo a un reporte aqui el codigo
Código Delphi
[-]
var
i,j:Integer;
cadena:String;
begin
if grid.SelectedRows.Count>0 then
begin
for i:=0 to grid.SelectedRows.Count-1 DO
begin
query.GotoBookmark(pointer(grid.SelectedRows.Items[i]));
for j := 0 to query.FieldCount-1 do
begin
if (j>0) then cadena:=cadena+', ';
cadena:=cadena+query.Fields[j].AsString;
end;
cadena:= cadena+#13;
end;
showmessage(cadena);
end;
end;
espero te sirva