Работен лист за име на VBA - Дайте име на работен лист на Excel с помощта на VBA

Работен лист за име на Excel VBA

Във VBA, за да назовете работен лист, не са необходими специални умения. Трябва само да посочим името на листа, което променяме, като въведем съществуващото име на лист. Например, ако искаме да сменим листа с име „Продажби“, тогава трябва да извикаме листа с името му, като използваме обекта Worksheet.

Работни листове („Продажби“)

След като споменем името на листа, трябва да изберем свойството “Name”, за да променим името на работния лист.

Работни листове („Продажби“). Име

Сега трябва да зададем свойството Name на името според нашето желание. Да предположим, че искате да промените „Продажби“ на „Продажбен лист“, след това поставете знак за равенство след свойството „ИМЕ“ и въведете новото име в двойни кавички.

Работни листове („Продажби“). Име = „Лист за продажби“

По този начин можем да променим името на работния лист, като използваме свойството Name.

Примери за назоваване на работен лист с помощта на VBA

Пример # 1

Промяна или преименуване на лист с помощта на променливи.

Например погледнете примерния код по-долу.

Код:

Sub Name_Example1 () Dim Ws As Worksheet Set Ws = Worksheets ("Sales") Ws.Name = "Sheet Sales" End Sub

В горното първо декларирах променливата като Работен лист.

Затъмнете Ws като работен лист

След това зададох препратката към променливата като „Продажби“, използвайки обект на работни листове.

Задайте Ws = работни листове ("Продажби")

Сега променливата „Ws“ съдържа препратката към работния лист „Продажби“.

Сега използвайки променливата „Ws“, преименувах работния лист на „Продажбен лист“.

Този код ще промени името „Продажби“ на „Лист за продажби“.

Важна забележка, която трябва да запомните

Току-що видяхме как да променим името на работния лист на Excel от едно име на друго. Ако обаче стартираме кода отново, ще получим грешка в индекса извън обхвата.

Един от ключовете за намиране на експерт по VBA Macros е да се справя с грешки. Преди да се справим с грешки, трябва да знаем защо получаваме тази грешка.

Причината, поради която получаваме тази грешка, тъй като в самата предишна стъпка вече сме сменили работния лист с име „Продажби“ на „Продажбен лист“.

Нямаме лист, наречен „Продажби“, ще получим този индекс извън грешка.

Пример # 2

Вземете всички имена на работни листове в един лист .

Да приемем, че имате много работни листове във вашата работна книга и искате да получите името на всички тези работни листове във всеки един от отделните работни листове. Това може да стане чрез използване на VBA кодиране.

Например погледнете изображението по-долу.

Тук имаме толкова много листове.

От всички тези листове ни трябва името на всеки лист в листа, наречен „Индексен лист“. Написах кода по-долу за вас.

Код:

Sub All_Sheet_Names () Dim Ws As Workheet Dim LR As Long for Every Ws in ActiveWorkbook.Worksheets LR = Worksheets ("Index Sheet"). Cells (Rows.Count, 1) .End (xlUp) .Row + 1 'This LR varaible за да намерите последния използван ред Клетки (LR, 1). Изберете ActiveCell.Value = Ws.Name Следващ Ws End Sub

Сега копирайте този код във вашия модул.

Сега стартирайте кода, като назовете някой от работните листове като „Индексен лист“. Този код ще даде имената на всички работни листове в „Индексен лист“.

По този начин, използвайки свойството “NAME” на работния лист във VBA, можем да си поиграем с името на работните листове. Можем да преименуваме, извличаме и можем да избираме конкретния работен лист и да правим много други неща, които могат да се направят, като се използва свойството “Name”.

Неща за запомняне

  • NAME във VBA е собственост.
  • Използвайки това име, можем да преименуваме работния лист, а също така можем да извлечем имена на листове.
  • Можем да променим всяко име на работния лист в посочената работна книга, ако се позовавате на други работни книги, освен на написаната от кода работна книга.
  • Ако името на работния лист не съвпада, ще изведем индекса извън обхвата.

Интересни статии...