Search notes:

Access Object Model: QueryDef - show number of affected records after execute

The queryDef property recordsAffected evaluates to the number of affected records by the most recent execute.
option explicit

sub main() ' {

    dim db as dao.database
    set db = application.currentDB

  '
  ' Drop table if it exists:
  '
    if not isNull(dLookup("Name", "MSysObjects", "Name='tq84_tab'")) then db.execute("drop table tq84_tab" )

  '
  ' Create table and fill with one initial value:
  '
    db.execute("create table tq84_tab (col_1 number, col_2 varchar(100))")
    db.execute("insert into tq84_tab values(1, '*')")

    dim stmt as queryDef
    set stmt =  db.createQueryDef("", "insert into tq84_tab(col_1, col_2) select 2*col_1, col_1 & col_1 from tq84_tab")

    stmt.execute
    debug.print("Number of records inserteed: " & stmt.recordsAffected)

    stmt.execute
    debug.print("Number of records inserteed: " & stmt.recordsAffected)

    stmt.execute
    debug.print("Number of records inserteed: " & stmt.recordsAffected)

    stmt.execute
    debug.print("Number of records inserteed: " & stmt.recordsAffected)

end sub ' }
Github repository about-MS-Office-object-model, path: /Access/QueryDef/execute/recordsAffected.bas
The example, when run, prints:
Number of records inserteed: 1
Number of records inserteed: 2
Number of records inserteed: 4
Number of records inserteed: 8

Index