我正在使用 ClosedXMl 创建 Excel 文件,并希望在输入“HH:MM”以外的时间格式时设置警报消息。 我已尝试下面的代码,但输入“1”后也没有显示错误消息,但对于日期格式同样工作正常。
ws.Cell("D7").Style.NumberFormat.Format = "hh-mm";
ws.Cell("D7").DataValidation.Time.EqualOrGreaterThan(new TimeSpan(0, 0, 0));
ws.Cell("D7").SetDataValidation().ErrorStyle = XLErrorStyle.Stop;
ws.Cell("D7").SetDataValidation().ErrorMessage = "Date Format HH MM";
适用于日期的代码(输入 1 后弹出警报消息)
ws.Cell("T5").Style.NumberFormat.Format = "dd-mmm-yyyy";
ws.Cell("T5").SetDataValidation().Date.EqualOrGreaterThan(new DateTime(2000, 1, 1));
ws.Cell("T5").SetDataValidation().ErrorStyle = XLErrorStyle.Stop;
ws.Cell("T5").SetDataValidation().ErrorMessage = "Date Format DD MMM YYYY";
最佳答案
DataValidation.Time.EqualOrGreaterThan(new TimeSpan(0, 0, 0));
中的 Time 的 EqualOrGreaterThan 方法可能没有 Time 属性。但请尝试以下方法。
您可以做的一件事是可以将时间和日期一起放入日期验证中。
ws.Cell("T5").Style.NumberFormat.Format = "dd-MM-yyyy HH:mm:ss";
ws.Cell("T5").SetDataValidation().Date.EqualOrGreaterThan(new DateTime(2008, 5, 1, 8, 30, 52)); // first
ws.Cell("T5").SetDataValidation().ErrorStyle = XLErrorStyle.Stop;
ws.Cell("T5").SetDataValidation().ErrorMessage = "Date Format DD MMM YYYY HH mm ss";
关于closedxml - ClosedXML 中的时间格式验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57626907/