Возможная синтаксическая ошибка? "Expecting =" В дополнительном вызове из пользовательской формы - PullRequest
0 голосов
/ 17 марта 2020

Я хочу вызвать Sub, который я объявил на нем, выдает ошибку компиляции, говоря, что он ожидает = . Вызов Sub находится в процедуре события UserForm_Initialize. Код выглядит следующим образом.

В модуле:

Public Sub FillCb(Ar() As String, Cb As ComboBox)
    Cb.Clear
    For I = 1 To Application.CountA(Ar)
        Cb.AddItem (Ar(I))
    Next I
End Sub

В коде пользовательской формы:

Private Sub UserForm_Initialize()
    LblDate.Caption = Date
    FillCb(LibrosNoPrestados, CbLibro)
End Sub

Этот код дает мне ошибку. Я построчно анализировал код, используя отладчик и комментируя строку las внутри события Initialize, и до этого момента он работал нормально. Ошибка генерируется во время компиляции в

FillCb(LibrosNoPrestados, CbLibro)

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

1 Ответ

1 голос
/ 17 марта 2020

VBA "особенность". Если вы вызываете подпрограмму без ключевого слова «Call», не используйте скобки, если вы используете ключевое слово «Call», вам нужны круглые скобки.

Например, Call FillCb(LibrosNoPrestados, CbLibro)

Или

FillCb LibrosNoPrestados, CbLibro

Вот документация Microsoft: https://docs.microsoft.com/en-us/office/vba/language/reference/user-interface-help/call-statement

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