you would need to build the subtotal yourself...or keep track of all records that you want to remove, then in your formula for displaying the subtotal you would subtract the removal amount.
for example.
somewhere, a group footer for the order (at least that is where I would put it), if it contains a new item:
shared numbervar newItem;
newItem := newItem + 1;
""//hide the increment
in the report group footer (or whichever footer)
shared numbervar newItem;
count({table.field}, {group}) - newItem
or something along these lines.
just trying to suggest a path.