toShiftedRange
will only offsets the current range reference (e.g. 'A1' becomes 'A2'). It doesn't move the contents. So the next row is appended below the current one. No data gets "shifted".
(side note Keikai is not Excel, so no COM involved :P)
This guy posted a few blog entries about this topic recently, you might find it interesting:
I guess the objection I would have is that excel provides little data validation, so it would be easy to enter data that doesn’t conform to the backend requirement. You could quite easily end up with strings in your numbers, and dollar signs in your currency where they are supposed to be plain numbers. Etc etc.