Excel 2016 64bit VBA: Почему моя глобальная переменная сбрасывается в конце sub?

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

Итак, как я могу предотвратить это в моем коде VBA, так как мне нужно вызывать переменную в последующих подпрограммах?

Option Explicit

Public strDate As Variant

Sub SelectDate()
    strDate = InputBox("Select Report Date (mm/dd/yy)", "Report Date", Format(Now() - 1, "mm/dd/yy"))

    If IsDate(strDate) Then
        strDate = Format(CDate(strDate), "mm/dd/yy")
    Else
        MsgBox "Valid Date Format Required"
    End If
End Sub

0 ответов

Другие вопросы по тегам