Как извлечь дату и вычесть ее из сегодняшней даты? - PullRequest
0 голосов
/ 14 марта 2019

Я пытался выяснить, как извлечь дату и вычесть ее из сегодняшней даты, а затем мне нужно, чтобы она отображала «да» или «нет», исходя из того, что она находится за пределами или в пределах диапазона 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 Ответ

2 голосов
/ 14 марта 2019

Метод Cells имеет синтаксис Cells (строка, столбец).Сначала вы используете столбец, а также этот столбец должен быть в двойных кавычках, иначе он будет обрабатываться как переменная, и вы не объявили их.

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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...