sorted - it was probably good to state the facts in black and white.
What i did was keep track of the modified row using an index (unique) and then called
er_data_changed->modify_cell( i_row_id = ls_mod-row_id
i_fieldname = lv_fieldname
i_value = lv_value ).