Solved! Go to Solution.
What you're trying to do is is something called parameter validation -- and you can only do this with a script tool.
You could write a very short Python script tool that just imports arcpy and calls your model, so you can set up validation on its arguments.
If you want to have the tool simply not tromp any already-set values, within your model you could run a select features by attribute on the input table view (for blank or null values) before running calculate field.
Input table -> Select Layer By attribute -> (table) -> Calculate Field -> (table) -> Select Layer By Attribute (clear selection)
This would be less complicated than setting up a script tool and doing parameter validation as I suggested.
Another thing you may want to try in your model is not do anything if zero or more than a certain amount of rows are selected, so you don't accidentally calculate all rows. This would be done using the Get Count tool, sending its output to calculate value with an expression like "%Count% > 0 or %Count% < 100", and using the output as a precondition:
Input table -> Select Layer By attribute -> (table) -> Get Count -> (count) -> Calculate value -> (output) -> [precondition] -> Calculate Field -> (table) -> Select Layer By Attribute (clear selection)