DBGrid2.DataSource.DataSet.First;
while not (DBGrid2.DataSource.DataSet.Eof) do begin
ADOTable1.Append;
ADOTable1.FieldByName('Campo1').AsString :=
DBGrid2.DataSource.DataSet.FieldByName('Campo1').AsString;
ADOTable1.FieldByName('Campo2').AsString :=
DBGrid2.DataSource.DataSet.FieldByName('Campo2').AsString;
ADOTable1.Post;
DBGrid2.DataSource.DataSet.Next;
end;