如何提取日期并将其从今天的日期中减去?

时间:2019-03-14 19:25:32

标签: excel vba

我一直试图弄清楚如何提取日期并将其从今天的日期中减去,然后我需要根据其在12个月的范围之内或之外来显示是或否。我只是想弄清楚如何进行数学运算,甚至不使其陷入幻想。

我添加了很多东西,因为各种论坛帖子告诉其他人他们缺少明确的选项或未定义变量,但是我仍然坚持让它开始运行。

错误消息是

  

编译错误:未定义变量。

我在代码中画了一个箭头,声称它是<-----------

Private Sub CommandButton1_Click()
    calcDate
End Sub

Public Function calcDate() '<-------------- This is where the error is    
    Dim RegDate As Date
    Dim UpDate As Date

    Set RegDate = Sheets("2019").Cells(o, 17)
    Set UpDate = Sheets("2018").Cells(n, 2)

    answer = DateDiff("m", RegDate, UpDate)

    Sheets("Table").Cells(b, 2) = answer
End Function

1 个答案:

答案 0 :(得分:2)

Cells方法具有语法Cells(row,column)。 您首先使用一列,并且该列也需要用双引号引起来,否则它将被视为变量,并且您尚未声明它们。

Cells(2,"n")将起作用。

此外,您尚未声明变量answer

最后,为日期变量分配值时不需要Set

Option Explicit

Private Sub CommandButton1_Click()
    calcDate
End Sub

Public Function calcDate()

Dim RegDate As Date
Dim UpDate As Date
Dim answer As Integer

RegDate = Sheets("2019").Cells(17, "O")
UpDate = Sheets("2018").Cells(2, "N")

answer = DateDiff("m", RegDate, UpDate)

Sheets("Table").Cells(2, "B") = answer

End Function