let
Source = Excel.CurrentWorkbook(){[Name="tDates"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Date", type date}}),
StartOfSemester = Table.AddColumn(#"Changed Type", "Start Of Semester", each if Date.QuarterOfYear([Date]) = 1 or Date.QuarterOfYear( [Date] ) = 3 then Date.StartOfQuarter([Date]) else
Date.StartOfMonth(Date.AddQuarters(Date.StartOfQuarter([Date]),-1))),
EndOfSemester = Table.AddColumn(StartOfSemester, "End Of Semester", each if Date.QuarterOfYear([Date]) = 2 or Date.QuarterOfYear( [Date] ) = 4 then Date.EndOfQuarter([Date]) else
Date.EndOfMonth(Date.AddQuarters(Date.EndOfQuarter([Date]),1))),
StartOfPrevSemester = Table.AddColumn(EndOfSemester, "Start Of Previous Semester", each Date.AddQuarters([Start Of Semester],-2)),
EndOfPrevSemester = Table.AddColumn(StartOfPrevSemester, "End Of Previous Semester", each Date.AddQuarters([End Of Semester],-2)),
#"Changed Type1" = Table.TransformColumnTypes(EndOfPrevSemester,{{"Start Of Semester", type date}, {"End Of Semester", type date}, {"Start Of Previous Semester", type date}, {"End Of Previous Semester", type date}})
in
#"Changed Type1"