VBA Добавяне на нов лист - име, преди/след и още примери

Този урок ще обсъди как да добавяте / вмъквате работни листове с помощта на VBA.

Добавяне на лист

Този прост макрос ще добави лист преди ActiveSheet:

123 Sub Add ()Листове. ДобавянеEnd Sub

След като вмъкнете лист, новият лист става ActiveSheet. След това можете да използвате обекта ActiveSheet за работа с новия лист (В долната част на тази статия ще покажем как да вмъкнете нов лист директно в променлива).

1 ActiveSheet.Name = "Нов лист"

Добавете лист с име

Можете също да определите име на лист, докато създавате новия лист:

1 Sheets.Add.Name = "Нов лист"

Създайте нов лист с име от клетка

Или използвайте стойност на клетка, за да дадете име на нов лист:

1 Sheets.Add.Name = диапазон ("a3"). Стойност

Добавяне на лист преди / след друг лист

Може също да изберете мястото, където ще бъде вмъкнат новият лист. Можете да използвате свойствата След или Преди да вмъкнете лист на определено място в работната книга.

Поставете лист след друг лист

Този код ще вмъкне новия лист СЛЕД друг лист:

1 Sheets.Add After: = Sheets ("Input")

Това ще вмъкне нов лист СЛЕД друг лист и ще посочи името на листа:

1 Sheets.Add (After: = Sheets ("Input")). Name = "NewSheet"

Забележете допълнителните скоби, необходими във втория пример (първият пример ще генерира грешка, ако се добавят вторите скоби).

или преди:

1 Sheets.Add (Преди: = Sheets ("Въвеждане")). Name = "NewSheet"

В тези примери ние изрично наименувахме листа, използван за определяне на местоположението на листа. Често вместо това ще искате да използвате номера на индекса на листа, така че да можете да вмъкнете листа в началото или края на работната книга:

Добавяне на лист към края на работната книга

За да добавите лист в края на работната книга:

1 Sheets.Add After: = Sheets (Sheets.Count)

Добавяне на лист към началото на работната книга:

За да добавите лист в началото на работната книга:

1 Sheets.Add (Преди: = Sheets (1)). Name = "FirstSheet"

Добавяне на лист към променлива

Този код присвоява новия лист на променлива при създаването на листа:

12 Затъмнете като работен листЗадайте ws = Sheets.Add

От тук можете да посочите новия лист с променливата „ws“:

1 ws.name = "VarSheet"

Още примери за добавяне на листове

Създайте лист, ако вече не съществува

Може да искате да създадете лист само ако той вече не съществува.

Създаване на работни листове от списък с имена

Следващата процедура ще разгледа съдържанието на една колона, настроена на работни листове на Excel в текущата работна книга с тези имена. Той извиква друга функция, за да види дали лист с това име вече съществува и ако е така, листът не е създаден.

1234567891011121314151617181920212223242526 Private Sub CommandButton1_Click ()Обадете се на CreateWorksheets (Sheets ("Sheet2"). Range ("A1: a10"))End SubSub CreateWorksheets (имена_О__листове като диапазон)Dim No_Of_Sheets_to_be_Добавено като цяло числоDim Sheet_Name As StringDim i As IntegerNo_Of_Sheets_to_be_Added = Имена_Of_Sheets.Rows.CountЗа i = 1 към No_Of_Sheets_to_be_AddedSheet_Name = Имена_От_Листове. Клетки (i, 1).„Добавете лист само ако той вече не съществува и името е по -дълго от нула знациАко (Sheet_Exists (Sheet_Name) = False) И (Sheet_Name "") ТогаваРаботни листове.Add (). Име = Име на_листКрай АкоСледва iEnd Sub
1234567891011121314 Функция Sheet_Exists (WorkSheet_Name As String) Като булеваDim Work_sheet като работен листSheet_Exists = FalseЗа всеки работен лист в тази работна книгаАко Work_sheet.Name = WorkSheet_Name ТогаваSheet_Exists = ВярноКрай АкоСледващияКрайна функция

Така че, ако имаме следния текст в клетки A1: A30 в лист 2:

След това ще бъдат създадени следните листове:

Имайте предвид, че въпреки че „Куче“ се появява два пъти, се създава само един лист.

За да изтеглите .XLS файла за този урок, щракнете тук.

Така ще помогнете за развитието на сайта, сподели с приятелите си

wave wave wave wave wave