Вызов процедур с тем же именем

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

Sub Main() 
    Module1.MyProcedure 
End Sub

Если двум разным процедурам даны одинаковые имена в двух разных проектах, необходимо указать имя проекта при вызове процедуры. Например, следующая процедура вызывает процедуру Main в модуле MyModule проекта MyProject.vbp .

Sub Main() 
    [MyProject.vbp].[MyModule].Main 
End Sub

Примечание.

В разных приложениях проект называют по-разному. Например, в Microsoft Access проект называется базой данных (MDB); в Microsoft Excel это книга (.xls).

Совет

  • Если вы переименовываете модуль или проект, обязательно измените имя этого модуля или проекта во всех случаях использования в вызывающих операторах; в противном случае Visual Basic не сможет найти вызываемую процедуру. Используйте команду Заменить в меню Правка , чтобы найти и заменить текст в модуле.
  • Чтобы предотвратить конфликты имен между задаваемыми проектами, следует давать процедурам уникальные имена, тогда можно будет вызвать процедуру, не указывая проект или модуль.

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.