如何用VBA比较单元格日期值大小

单元格日期格式为 2010-1-31 ,如何取出这个值,并判断>=这个值怎么写?

日期可以直接使用,比如,A1的值为 2010-1-31 ,:
a=date ’将当前日期赋值给 a
if a>=range("a1").value then ……追问

可不可以写: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

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-21
合并后的单元格名称是首个单元格的名称..