You should be able to create a solution using alt() function with some possible date interpretation functions.
You'll need to decide how to handle year numbers and months names, what date do you want to assign to these?
A solution could look like this:
Set DateFormat = 'DD/MM/YYYY';
LOAD *, alt(if(IsText(DateCol),Date(Date#(DateCol,'MMM')), if(DateCol < 2200,MakeDate(DateCol),Date(DateCol)))) as NewDate INLINE [
Just noticed, that you don't really need the alt() function here, reason being that you need to check the numeric value in a condition anyway:
if(IsText(DateCol),Date(Date#(DateCol,'MMM')), if(DateCol < 2200,MakeDate(DateCol),Date(DateCol))) as DateColNew
Thanks, I have one question also what is the meaning of if(DateCol < 2200,MakeDate(DateCol),Date(DateCol) )
please explain it.
If your numeric value is smaller than 2200, I assume it's describing a year (first argument to makedate() function), if it's larger than 2200, it's a date in numeric representation, so we just need to format the text representation.