可不可以写:a="2010-1-31"
追答那是字符串,正规的写法是用#括起来,如:
a=#2010-1-31#
VBA会自动将写法改成:a = #1/31/2010# ,就是:#月/日/年#
不过,VBA也能识别字符串格式的日期,但要求先定义变量为date型,否则不能参与计算,如:
Public Sub sss()
Dim a As Date, b As Date, c
a = #1/30/2010#
b = "2010-1-31"
c = "2010-1-31"
MsgBox b - a '这句能正确计算
MsgBox c - a '这句出错
End Sub