Могу ли я использовать условную компиляцию для добавления отсутствующих типов? - PullRequest
0 голосов
/ 30 июня 2019

Следующее:

#If False Then
    Public Type Long
        LoPart As Integer
        HiPart As Integer
    End Type
#End If

Выдает ошибку компилятора «Ожидаемый: идентификатор» при запуске в моем 32-разрядном офисе VBA7 (Excel).Это потому, что Long является защищенным типом.Однако я понимал, что компилятор не должен видеть, что находится в блоке (поскольку условие всегда ложно).

Почему я все еще получаю ошибку?

Я все еще могу написать изапускать код с использованием длинных переменных - мой тип не отображается в intellisense.Но строка

Public Type Long

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


Примечание: я пытаюсь написать замену LongPtr для систем, предшествующих VBA7, где его еще не было - в случае, если кому-то удастся запустить VBA6.в 64-битном офисе - держу пари, что есть способ ...

...