"debugger, It is not clear to me anything"
Probably, it's because you haven't used the data in your DataSet to load your DataGridView before you try to start using the rows. So the system doesn't know what your DGV columns should be like.
Start by putting a breakpoint on the line:
dSet.Tables[0].Rows.InsertAt(dr, 0);
And step through your code.
Look at the variables, and what exactly is going on - it's very muddled code, with your looping on the DGV rows to set a couple of non-loop variables cbxMove (which you never use again) index (which you use once and it irrelevant) and ComboMovePlace which gets the same value each time the loop ends.
I think you need to think a bit more carefully about what you are trying to do - it isn't at all obvious from that code - before you jump into coding.