Add CopyRows() capability

Sometimes there’s a need to copy a row or multiple rows, e.g. to make a snapshot of some data. Think of a pricing calculator table with lots inputs for different percentages etc — and the salesperson wants to make multiple variants with small changes to be able to quickly switch between.

Copying a row with AddRow() and enumerating all the columns is not a problem… unless there’s a few dozen of those.

CopyRows() could be a handy formula. It would accept a row or a filtered table, and for variadic arguments it could also accept column-value pairs of the data that needs to be overwritten in copied columns, e.g., Tasks.Filter(Client = "Paul").CopyRows(Client, "Ben"). It would copy rows into the same table.


Meanwhile here’s a trick to make writing an AddRow() formula easier when tables are very wide: