How to suck many tables into one big table without API

I’ve made multiple timesheets for contractors. I want to aggregate them into one big timesheet on the backend, but I’m not a developer and don’t want to use the API.

I’ve described my solution below, but I would love to know if there’s a better one, because my solution feels a bit fragile and prone to human error.

  1. Create new timesheet for contractor based on a template.
  2. Sync that timesheet into an Master Timesheet doc via Cross Doc. Set it to sync daily.
  3. Add a button column to the synced timesheet in Master Timesheet doc. The button adds the current row to a Master Timesheet table.
  4. Use an automation to push the button regularly.

Detail on the button column in step 3:

  1. Column is called Add to Master Timesheet
  2. Format: Button
  3. Label: “Add to Master Timesheet”
  4. Action: Add or modify rows
  5. Table: Master Timesheet
    Button set-up:

Disable if:
[Master Timesheet].Filter( Contractor=[ADD CONTRACTOR NAME]AND Fee=thisRow.Fee AND Date=thisRow.Date AND Activity=thisRow.Activity AND Notes=thisRow.Notes AND [CUSTOM COLUMN 1]=thisRow.[CUSTOM COLUMN 1] AND [CUSTOM COLUMN 2]=thisRow.[CUSTOM COLUMN 2]).Count()>0