<aside> 🧙‍♂️ I think this is what you're looking for? Unsure what you want to show if all dates are empty. I defaulted to showing today's date.

if(prop("Dates?") == 2, fromTimestamp(max(timestamp(prop("Date 1")), timestamp(prop("Date 2")), timestamp(prop("Date 3")), timestamp(prop("Date 4")), timestamp(prop("Date 5")))), if(prop("Dates?") == 1, now(), fromTimestamp(max(if(empty(prop("Date 1")), timestamp(prop("Date 1A")), timestamp(prop("Date 1"))), if(empty(prop("Date 2")), timestamp(prop("Date 2A")), timestamp(prop("Date 2"))), if(empty(prop("Date 3")), timestamp(prop("Date 3A")), timestamp(prop("Date 3"))), if(empty(prop("Date 4")), timestamp(prop("Date 4A")), timestamp(prop("Date 4"))), if(empty(prop("Date 5")), timestamp(prop("Date 5A")), timestamp(prop("Date 5")))))))

Check out how I did this in the below page. I broke the formula down so you can improve your formula writing in the future when struggling with complex logic like this :)

</aside>

Untitled Database


//answer
//final level some dates populated and if no dates populated default to 
if(prop("Dates?") == 2, fromTimestamp(max(timestamp(prop("Date 1")), timestamp(prop("Date 2")), timestamp(prop("Date 3")), timestamp(prop("Date 4")), timestamp(prop("Date 5")))), if(prop("Dates?") == 1, now(), fromTimestamp(max(if(empty(prop("Date 1")), timestamp(prop("Date 1A")), timestamp(prop("Date 1"))), if(empty(prop("Date 2")), timestamp(prop("Date 2A")), timestamp(prop("Date 2"))), if(empty(prop("Date 3")), timestamp(prop("Date 3A")), timestamp(prop("Date 3"))), if(empty(prop("Date 4")), timestamp(prop("Date 4A")), timestamp(prop("Date 4"))), if(empty(prop("Date 5")), timestamp(prop("Date 5A")), timestamp(prop("Date 5")))))))

//level 1 all dates populated logic
if(prop("Dates?") == 2, fromTimestamp(max(timestamp(prop("Date 1")), timestamp(prop("Date 2")), timestamp(prop("Date 3")), timestamp(prop("Date 4")), timestamp(prop("Date 5")))), now())

//components

//check if all or no dates populated to simplify logic formula
// 0 = <5 >1 dates populated
// 1 = no dates populated
// 2 = all dates populated
if(empty(prop("Date 1")) == true and empty(prop("Date 2")) == true and empty(prop("Date 3")) == true and empty(prop("Date 4")) == true and empty(prop("Date 5")) == true, 1, if(empty(prop("Date 1")) == false and empty(prop("Date 2")) == false and empty(prop("Date 3")) == false and empty(prop("Date 4")) == false and empty(prop("Date 5")) == false, 2, 0))

//check each date for value, if not, default to 2000 years ago
if(empty(prop("Date 1")), dateSubtract(now(), 2000, "years"), prop("Date 1"))

//preparing partial dates populated formula
if(empty(prop("Date 1")), timestamp(prop("Date 1A")), timestamp(prop("Date 1"))),
if(empty(prop("Date 2")), timestamp(prop("Date 2A")), timestamp(prop("Date 2"))),
if(empty(prop("Date 3")), timestamp(prop("Date 3A")), timestamp(prop("Date 3"))),
if(empty(prop("Date 4")), timestamp(prop("Date 4A")), timestamp(prop("Date 4"))),
if(empty(prop("Date 5")), timestamp(prop("Date 5A")), timestamp(prop("Date 5"))),
//full formula pasting
fromTimestamp(max(
if(empty(prop("Date 1")), timestamp(prop("Date 1A")), timestamp(prop("Date 1"))),
if(empty(prop("Date 2")), timestamp(prop("Date 2A")), timestamp(prop("Date 2"))),
if(empty(prop("Date 3")), timestamp(prop("Date 3A")), timestamp(prop("Date 3"))),
if(empty(prop("Date 4")), timestamp(prop("Date 4A")), timestamp(prop("Date 4"))),
if(empty(prop("Date 5")), timestamp(prop("Date 5A")), timestamp(prop("Date 5")))
))
//full max formula logic
fromTimestamp(max(if(empty(prop("Date 1")), timestamp(prop("Date 1A")), timestamp(prop("Date 1"))), if(empty(prop("Date 2")), timestamp(prop("Date 2A")), timestamp(prop("Date 2"))), if(empty(prop("Date 3")), timestamp(prop("Date 3A")), timestamp(prop("Date 3"))), if(empty(prop("Date 4")), timestamp(prop("Date 4A")), timestamp(prop("Date 4"))), if(empty(prop("Date 5")), timestamp(prop("Date 5A")), timestamp(prop("Date 5")))))