lo puedes hacer con do while
seria algo como esto
creas tus conecciones y tus recordsets
seleccionas todos tus registros de tabla 1 en un recordset
Código:
do until rsTabla1.EOF
sql = select * from tabla2 where tabla2.id = rsTabla1("id")
rsTabla2.Open sql, conx
if rsTabla2.EOF then
sqlins = insert into tabla2(id... etc) values( rsTabla1("id") .. etc)
conx. execute sqlins
else
sqlup = update tabla2 set campo1 = rsTabla1("campo1") .. etc where tabla2.id = rsTabla1("id")
conx. execute sqlup
end if
rsTabla1.movenext
loop
así a groso modo se insertarían y actualizarian los registros