I have the following formula in google sheets, it is working, but not 100%, in Column G I will only add a value now and then, but when I do, it change all the column I entry before to the new value in column G, and it should not, it must keep them the same.

=IF(G2<>"", ROUND(INDIRECT("G" & MAX(FILTER(ROW(G:G), G:G<>"", ROW(G:G)<=ROW()))) * INDIRECT("D" & ROW()), 2), I2)

here s the link to google sheet

https://docs.google.com/spreadsheets...it?usp=sharing