There is a very messy way to achieve the same aim, but I really wouldn't recommend this:
Pick a region of your worksheet in which you would like the user to enter their data. Unlock these cells.
If the data to be entered are text, pick a piece of null text (e.g. "-") and enter it in these cells.
Now find another region of the worksheet in which to mirror the data. This area remains locked.
Turn on iteration (Tools-Options-Calculation tab)
In the "mirror" arear of the worksheet, enter equations of the form: =IF(B2=0, A2, B2), where B2 is the cell into which you are entering the equation, and A2 is the cell whose data should be mirrored here. For text entry, replace 0 with your null text "-".
Now protect the worksheet.
The idea is that while cell B2 contains a null, it will reflect A2, but the moment A2 is non-null, this value will appear in B2, which from then on will be equal to itself, and therefore unchanging. Of course the user can change their entry later, but it won't affect the mirror, and you can use the mirror area version of the data.
You can, of course, put the mirror-area in some hidden columns so the user doesn't see it, but this carries the risk that a user will re-enter data, and won't be aware that their first entry was binding.
But seriously, this is a messy solution, and I'm not sure it's sensible to stop people from entering data twice. No one is a perfect typist.