Объявление объекта листа - PullRequest
1 голос
/ 14 марта 2019

Я всегда объявлял объект рабочего листа, используя синтаксис Dim w as Worksheet, но недавно я наткнулся на некоторый код, который использовал Dim w as Excel.Worksheet.

Я проверил с помощью Обозревателя объектов, который заявил, что Worksheet является членом Excel.Итак, мой вопрос: почему просто Dim ws as Worksheet также работает?

Я подозреваю, что для объектов Excel не требуется префикс Excel, но до сих пор я не встречал однозначного утверждения на этот счет.

1 Ответ

5 голосов
/ 14 марта 2019

В Excel VBA они для всех намерений и целей одно и то же.Excel является «родителем» рабочего листа, но он неявно определяется в рабочем пространстве Excel VBA.Как правило, это не требуется при работе в Excel VBA, поскольку это значение по умолчанию.

Однако, если вы работали в Word VBA и импортировали библиотеку объектов Microsoft Excel xx, вам нужно будет указать Excel.Worksheetпоскольку модель приложения Word будет использоваться по умолчанию и не будет содержать тип рабочего листа.

...