【发布时间】:2012-01-27 13:33:22
【问题描述】:
我正在努力将日期验证应用于 VB.NET 的 excel 单元格(范围)。
Private Sub DateValidExcelRule(ByVal worksheet As SpreadsheetGear.IWorksheet, ByVal DateRange As String)
Dim dt As Date = CDate("1/1/1900")
worksheet.Range(DateRange).Validation.Delete()
worksheet.Range(DateRange).Validation.Add(ValidationType.Date, ValidationAlertStyle.Stop, ValidationOperator.Greater, dt, Nothing)
worksheet.Range(DateRange).NumberFormat = "mm/dd/yyyy"
worksheet.Range(DateRange).Validation.IgnoreBlank = True
worksheet.Range(DateRange).Validation.InputTitle = "Excel Validation"
worksheet.Range(DateRange).Validation.ErrorTitle = "Error in Date"
worksheet.Range(DateRange).Validation.InputMessage = "Note: only date values here"
worksheet.Range(DateRange).Validation.ErrorMessage = "Enter valid Date"
worksheet.Range(DateRange).Validation.ShowInputMessage = True
worksheet.Range(DateRange).Validation.ShowError = True
End Sub
问题:
当我输入 4 位整数 7777 时,它正在验证正确显示消息 Enter Valid Date,但是当我输入 5 位数字 77777 时,它正在接受该值并将其转换为 12/10/2112 值并且没有显示任何错误消息。
我想要做的就是验证单元格值是否为任何日期格式mm/dd/yyyy。
请告诉我,我走的路对吗?
【问题讨论】: