위의 형태 날짜의 기준에 맞게, 문자열이 들어오면, (년,월,일) 형태로 분리해서 받아 나만의 문자열 조합을 만들 수 있습니다.
/// <summary>
/// EPPLUS 의 엑셀 DATE 함수 사용(=DATE())
/// </summary>
/// <param name="dateString">The date string.</param>
/// <returns></returns>
public static string DateExcelFormula(string dateString)
{
if (TryParseDate(dateString, out int year, out int month, out int day))
{
return $"=DATE({year},{month},{day})";
}
return dateString;
}
private static bool TryParseDate(string dateString, out int year, out int month, out int day)
{
string[] formats = {
"yyyyMMdd", "yyyy-MM-dd", "yyyy-M-d", "yyyy-M-dd", "yyyy-MM-d",
"yyyy.MM.dd", "yyyy.M.d", "yyyy.M.dd", "yyyy.MM.d", "yyyy.MM.dd"
};
DateTime parsedDate;
if (DateTime.TryParseExact(dateString, formats, null, System.Globalization.DateTimeStyles.None, out parsedDate))
{
year = parsedDate.Year;
month = parsedDate.Month;
day = parsedDate.Day;
return true;
}
else
{
year = month = day = 0;
return false;
}
}