Further to this...
So I'm trying to cobble together something that will work with the existing library.
I first clear the existing data using table.Rows(n).Delete - that "works" in that it shifts up the cells under the table (and only under the table).
I then insert enough rows for my data using table.InsertRowsBelow(numRows) - that also "works" in that it only affects rows under the table.
Having done this, when I open the workbook in Excel I can see that the table has indeed been expanded (since Excel automatically applies formatting to the rows).
HOWEVER, the cell contents for the totals row that I had in my original table is now sitting halfway up the table. The table still *has* a totals row, but it's blank.
It seems that the totals row is correctly getting pulled up when I delete rows from the table, but is not getting pushed back down again by table.InsertRowsBelow.
I have since discovered that table.LastRow().InsertRowsBelow works as I needed. Should this be the default behaviour of table.InsertRowsBelow?