Проверьте, находится ли datetime между двумя datetime - PullRequest
0 голосов
/ 21 ноября 2018

Привет, я пытаюсь создать макрос с помощью vba. Примером будет

DATETIMEA  is  "20/11/2018 11:00:00 AM"

DATETIMEB is "20/11/2018 08:00:00 AM"

DATETIME  is "21/11/2018 07:59:00 AM"

Я хотел бы проверить, находится ли datetimeA между datetimeb и datetimec, приведенный ниже код не 't работа.

Значения хранятся в Date переменных.

If datetimeb >=  datetime And datetimea  <= datetimec

1 Ответ

0 голосов
/ 21 ноября 2018

VBA Solution

Неясно, как вы назначаете даты переменным, поэтому я предполагаю, что вы уже выполнили эту часть.

Вот два способа проверить оператор: DateB >= DateA >= DateC

Sub DateCompare()

Dim DateA As Date 'Variable Date
Dim DateB As Date 'Older Date
Dim DateC As Date 'Newer Date

DateA = Some Date
DateB = Some Date
DateC = Some Date

'Method to give Boolean Response
MsgBox DateA >= DateB And DateA <= DateC

'Method to do other things
If DateA >= DateB And DateA <= DateC Then
    MsgBox "DateA falls in-between DateB & DateC"
Else
    MsgBox "DateA does not fall in-between DateB & DateC"
End If

End Sub

Решение не VBA

Это можно сделать прямо в Excel без необходимостидля VBA ...
A2 = переменная дата
B2 = более старая дата
C2 = более новая дата

= AND (A2> = B2, A2 <= C2) </p>

Уравнение как есть вернет TRUE или FALSE.Уравнение может быть вложено в оператор IF, если вы хотите вернуть не-булев ответ, например:

= IF (AND (A2> = B2, A2 <= C2) = TRUE, "A находится между C & B", "A не находится между C & B") </p>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...