Yeah that becomes a problem. When you are inside a form, nothing has been written to the table yet. Your action can only pull values from an existing row, so it’s most likely using whatever values happen to be set in the first row of the table, and not from the new row you adding.
Honestly, I think you would be better off creating a custom form, which is essentially a single row table with several user specific columns and a detail screen that acts like a form. The difference is that each value you change is immediately written to the table. That way when you set up your action, it can copy the existing values written to the table and write them to the other columns. At the end of the form you have another button with an Add Row action to write the values to your final table. It’s a bit more setup but provides more flexibility.