This snippet may help or provide ideas...
m.lcSFile = Alltrim(This.Parent.Text1.Value)
m.lcTFile = Alltrim(This.Parent.Text2.Value)
m.lnOkay = Messagebox("You want to copy from: Source file: " + lcSFile + Chr(13) + ;
" into Target File: " + lcTFile, (4-32-256))
If lnOkay = 6
Use &lcSFile In 0 Alias Source
Use &lcTFile In 0 Alias Target
Select Source
Scan For !Deleted()
Scatter Name oSourceData
Select Target
APPEND blank
Gather Name oSourceData
Select Source
Endscan
ENDIF
This seems to be very fast, very simple (as long as the two tables are identical). If not the ields that don't match will simply be ignored.
GSD
Driving toward a Tactical Edge