Just echoing @DougBrowning's suggestion.
When you show a required field, then it should be assumed that the user can (and will) enter data into that field. Using a series of conditional statements prior to that required field to either conditionally show/hide the required field (i.e., using the relevant column), or remove the required component from that field entirely (i.e., use a logic statement in the required column) would be the ideal solution.
On the flip side, if users had a way to bypass a required field reliably, I'd be worried, and have that logged as a bug (if not done so already) as that could/would call into question data validity.