VBA Преименуване на лист | Как да преименувам работния лист на Excel с помощта на VBA код?

Преименуването на листове в Excel се извършва от лентата на задачите под работните листове, като кликнете два пъти върху тях, но във VBA използваме метода Sheets или Worksheet, за да преименуваме листа, синтаксисът за преименуване на лист във VBA е както следва Sheets („ Име на стария лист "). Име =" Име на нов лист ".

Преименувайте лист в Excel VBA

Всички сме свършили тази задача да преименуваме работния лист според нашата идентичност или според нашето удобство, нали? Преименуването не е ракетна наука за овладяване, но ако сте кодерът на VBA, тогава трябва да знаете тази задача да преименувате работния лист. Тъй като работим с работни листове, като използваме техните имена, е важно да знаем значението на имената на работните листове в кодирането на VBA. В тази статия ще ви покажем как да преименувате листа, като използвате Excel VBA кодиране.

Как да преименувате лист във VBA?

Промяната на името на работния лист не се нуждае от специални умения. Трябва само да посочим името на листа, което променяме, като въведем съществуващото име на лист.

Например, ако искаме да преименуваме листа, наречен „Лист 1“, тогава трябва да извикаме листа с неговото име, използвайки обект Worksheet.

Работни листове („Лист1“)

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

Работни листове („Лист1“). Име

Сега трябва да зададем свойството Name на името според нашето желание.

Работни листове („Sheet1“). Name = „New Name“

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

В следващите раздели на статията ще ви покажем все повече и повече примери за промяна или преименуване на работния лист.

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

По-долу са примерите за VBA Rename Sheet.

Можете да изтеглите този шаблон за преименуване на VBA от тук - VBA Rename Sheet Template

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

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

Код:

 Sub Rename_Example1 () Dim Ws As Worksheet Set Ws = Worksheets ("Sheet1") Ws.Name = "New Sheet" End Sub 

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

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

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

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

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

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

Този код ще промени името „Sheet1“ на „New Sheet“.

Ако стартирам кода ръчно или чрез клавиш за бърз достъп F5, отново ще получим грешка в Subscript Out of Range.

Причината, поради която получаваме тази грешка, защото в самата предишна стъпка вече сме сменили работния лист с име „Sheet1“ на „New Sheet“. Тъй като вече няма име на работен лист „Sheet1“, не е налице, VBA изхвърля тази грешка.

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

Можем да получим всички имена на работния лист на работната книга на един лист. Кодът по-долу ще извлече всички имена на работния лист.

Код:

 Sub Renmae_Example2 () Dim Ws As Workheet Dim LR As Long for Every Ws In ActiveWorkbook.Worksheets LR = Worksheets ("Main Sheet"). Cells (Rows.Count, 1) .End (xlUp) .Row + 1 Cells (LR, 1) .Изберете ActiveCell.Value = Ws.Name Следващ Ws End Sub 

Този код ще извлече всички налични имена на работни листове в листа с име „Основен лист“.

Пример # 3 - Задайте Постоянно име на работния лист на Excel с помощта на VBA

Тъй като работим с имена на листове при кодирането, е важно да им зададем постоянни имена. Как да им зададем постоянни имена?

За пример вижте кода по-долу.

Код:

 Sub Rename_Example3 () Работни листове ("Sheet1"). Изберете End Sub 

Горният код ще избере Sheet1.

Ако вашата работна книга се използва от много хора, ако някой е променил името на работния лист, ще получим грешка в Subscript Out of Range.

За да избегнем това, можем да му зададем постоянното име. За да зададете постоянното име, следвайте стъпките по-долу.

Стъпка 1: Изберете листа, на който трябва да зададете постоянното име, в Visual Basic Editor.

Стъпка 2: Натиснете клавиша F4, за да видите прозореца Properties.

Стъпка 3: Под Име, Свойство Променете името на „Ново име“.

As you can see one name is showing as “Sheet1” and in a bracket, we can see the new name as “New Sheet”.

Now in coding, we will use the new name instead of an actual visible name.

Code:

 Sub Rename_Example3() NewSheet.Select End Sub 

Now come back to the worksheet window, we can still see the sheet name as “Sheet1” only.

Now I will change the sheet name to “Sales”.

If I run the code using the F5 key or manually then it will still select the sheet named “Sales” only. Since we had given a permanent name to it, still it will select the same sheet only.