我想显示对使用CDate(dd / mm / yyyy)格式化日期的单元格的输入消息响应。如果输入是以dd / mm / yy完成的,为什么代码没有显示错误消息?程序接受它,但输出显示为 yy / mm / dd 。
下面的是我创建的代码:
Sub inputSettlementDate()
Dim varInputDate As Variant
Dim lngERow As Long
varInputDate = InputBox("Please enter the Settlement Date using this format dd/mm/yyyy.", "Settlement Date")
If IsDate(varInputDate) Then
varInputDate = Format(CDate(varInputDate), "dd/mm/yyyy")
Else
MsgBox "Please enter a valid date format dd/mm/yyyy"
End If
If IsDate(varInputDate) Then
lngERow = Range("B" & Rows.Count).End(xlUp).Row + 1
Range("B" & lngERow).Value = varInputDate
End If
End Sub
答案 0 :(得分:0)
您可能希望确保列B的格式为常规,或者它没有yy / mm / dd格式。我在一个空白的工作簿中测试了你的代码而没有改变任何东西,它运行得很完美。