You might also use a regular expression to do the job in one shot
$txt = " MoveJ [[-320.62,-132.78,227.68],[0.998219,0.0444207,-0.0168298,0.0360765],[-1,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v300,fine,Out_Ciseau\WObj:=rep_refil;" & @crlf & _
" Set S_lames;" & @crlf & _
" MoveL [[-257.19,-178.26,187.01],[0.952349,-0.0379082,-0.0440127,0.299429],[0,0,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],v300,fine,Out_Ciseau\WObj:=rep_refil;" & @crlf & _
" coupe_G;" & @crlf & _
" SetAO Effort,30 * Coeff_JE;" & @crlf & _
" MoveL [[-262.75,-132.35,192.71],[0.053336,-0.998395,-0.009298,-0.016629],[0,-1,0,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],V_approche,z10,refilat\WObj:=rep_refil;" & @crlf & _
" SetAO Effort,30 * Coeff_JE;" & @crlf & _
" MoveL [[-256.91,-165.70,186.64],[0.0536583,-0.976169,-0.206382,-0.0402727],[0,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]],V_rapide,Z_refil,refilat\WObj:=rep_refil;" & @crlf & _
" MoveL [[-232.36,-161.50,188.68],[0.0352275,-0.978176,-0.201269,-0.0377103],[0,-1,-1,0],[9E+09,9E+09,9E+09,9E+09,9E+09,9E+09]], V_rapide, Z_Refil, refilat\WObj:=rep_refil;"
$s = Execute("'" & StringRegExpReplace($txt, "(?m)^\h*Move[JL]\h\[\[(?:[\d.-]+,){2}\K(\d+)", "' & $1-3 & '") & "'")
Msgbox(0,"", $s)
Edit : comments
(?m) : multiline option ^ : start of line \h*Move[JL]\h\[\[(?:[\d.-]+,){2} : describe the beginning of the concerned line (in regex syntax ) \K : but don't touch it ! (\d+) : the integer part of the number to match