You couldn't check the exists of a field within a load-statement - it must be done before on the outside, for example with the following approach:
noconcatenate first 1 load * from Source;
let vCheckFields = if(fieldname('CheckFields', 1) = 'USER.ID', true(), false());
maybe also within a loop if the position of the field is variable:
for i = 1 to nooffields('CheckFields')
if fieldname('CheckFields', 1) = 'USER.ID' then
let vCheckFields = true();
and then using this within another if-loop to control which load-statement should be used.
Another way might be to use a rename-statement of this field after each single load whereby this approach will require a certain order of all your load-statements.