DataAdd - правильный путь. Вы можете добавить шесть месяцев к указанной дате:
PassedSixMonthsSince = DateAdd("m", 6, dGivenDate) >= dCurrentDate
или вы можете вычесть шесть месяцев из текущей даты:
PassedSixMonthsSince = dGivenDate >= DateAdd("m", -6, dCurrentDate)
Если вы не получите правильный результат, то это потому, что написанные вами даты не могут быть проанализированы правильно. Используемый вами формат (AFAIK) ваш, он больше не используется. Стандартизированный формат (ISO 8601) - "2000-02-29"
, и есть другие распространенные форматы, такие как "2/29/2000"
и "29/2/2000"
. Если вы хотите использовать литералы даты вместо разбора строк, они разделяются хеш-символами: #2000-02-29#
.