A few minor corrections. First, I told you wrong on the hidden field, should be: <input type=" hidden " name="attr_my_hidden_row_id" /> That will prevent it from showing up. Second, you can make the sheet worker run less often by only targeting the specific hidden field: <script type="text/worker"> on("change:repeating_rangedweapons :my_hidden_row_id ", function() { getSectionIDs("repeating_rangedweapons", function(idarray) { let setOps={}; for(var i=0; i < idarray.length; i++) { setOps['repeating_rangedweapons_'+idarray[i]+'_my_hidden_row_id']=idarray[i]; } setAttrs(setOps); }); }); </script> Happy Rolling!