Can't speak for others, but I find the question unclear. I don't understand it. What is "ER"?
Set up End_date as a calculation field = Case(Type = "ER" ; start_date ; entry_date)
which is saying "If type=ER, then use start_date as the end_date, otherwise use entry_date as the end_date"
is that what you were looking for?
A version of symbister's calculation could be set up as an auto-enter calculation on the end date field:
If ( type = "ER" ; start date ; self )
You may need to experiment with selecting and deselecting the "do not replace existing values" check box to see which produces the behavior you want to see on your layout.