Something else to consider:
Setup your data range and name the left-most cell below the data range. For example, if your data headings are in A1

1, then I would name cell A2. Assuming, of course, that no data has been entered yet. Assume the name for this cell is 'bottom'.
Setup a partial row farther down, below the data range (or on another sheet), with each cell formatted appropriately and any formulas that are required. Setup protection (lock or unlock) on the appropriate cells, if desired. Name this range 'typical'.
Write a macro to go to 'bottom', turn off protection, insert a new row and copy 'typical' to that new empty row, turn protection back on. You can record most of this macro. Just be careful to differentiate
Tools, Protection from
Format, Cells, Protection as you record.
This macro makes it very easy to control where data gets entered and how it is formatted. Combine this with a macro to delete a row and you have a nice way to control where data gets typed and how it is formatted.
I sometimes don't like this solution because it always adds data at the bottom of the range. This can be remedied by simply allowing the row insertion to be allowed anywhere in the data range.
I have used this technique many times for clients that have a need to control input and it works out nicely. Toss in another macro to duplicate the cell above and you can speed up data entry considerably.