Как получить доступ к рабочему листу не используя его индекс или имя — Visual Basic(Бейсик)

Получить доступ к рабочему листу (или листу диаграммы) можно не только с помощью индекса (номера) или имени в семействе Worksheets или Sheets, Charts, но и посредством использования имени, используемого в среде VBA, и именуемого кодовое имя (иногда называемого также программное имя)

Dim iWorksheet As Worksheet
Set iWorksheet = Лист2

With Лист2
 
End With

Пример использования кодового имени (ввод стандартной функции рабочего листа в несмежные ячейки и изменение цвета заливки пустых ячеек)

Лист2.[A1:C3].Clear
Лист2.[A1,A3,B2,C1,C3].Formula = "=Rand()"
Лист2.[A1:C3].SpecialCells(xlBlanks).Interior.Color = vbRed

With Лист2
     .[A1:C3].Clear
     .[A1,A3,B2,C1,C3].Formula = "=Rand()"
     .[A1:C3].SpecialCells(xlBlanks).Interior.ColorIndex = 3
End With

Комментарий:
Если применение кодового имени предполагается только из-за возможности случайного переименования, перемещения рабочего листа, то Вы можете запретить подобные действия
Кодовое имя также можно изменить, причём как вручную, так и программно
Не забывайте, что это имя также имеет свои ограничения
Использование кодового имени возможно только для текущей книги, для того, чтобы получить доступ к листу другой рабочей книги необходимо либо установить ссылку , либо воспользоваться следующим

Leave a Comment