ВБА Додај нови лист - назив, пре/после и још примера

Овај водич ће расправљати о томе како додати / уметнути радне листове помоћу ВБА.

Адд Схеет

Овај једноставан макро ће додати лист пре АцтивеСхеет -а:

123 Суб Адд ()Схеетс.АддЕнд Суб

Након уметања листа, нови лист постаје АцтивеСхеет. Затим можете да користите објекат АцтивеСхеет за рад са новим листом (На дну овог чланка показаћемо како уметнути нови лист директно у променљиву).

1 АцтивеСхеет.Наме = "Нови лист"

Додајте лист са именом

Можете и да дефинишете назив листа док креирате нови лист:

1 Схеетс.Адд.Наме = "Нови лист"

Направите нови лист са именом из ћелије

Или користите вредност ћелије за именовање новог листа:

1 Схеетс.Адд.Наме = ранге ("а3"). Валуе

Додајте лист пре / после другог листа

Можда ћете такође желети да изаберете локацију на којој ће нови лист бити уметнут. Помоћу својстава Након или Пре можете уметнути лист на одређено место у радној свесци.

Уметните лист иза другог листа

Овај код ће уметнути нови лист НАКОН другог листа:

1 Схеетс.Адд Афтер: = Схеетс ("Инпут")

Ово ће уметнути нови лист НАКОН другог листа и одредити назив листа:

1 Схеетс.Адд (Афтер: = Схеетс ("Инпут")). Наме = "НевСхеет"

Обратите пажњу на додатне заграде потребне у другом примеру (први пример ће генерисати грешку ако се додају друге заграде).

или Пре:

1 Схеетс.Адд (Бефоре: = Схеетс ("Инпут")). Наме = "НевСхеет"

У овим примерима смо изричито именовали Лист који се користи за одређивање локације листа. Често ћете уместо тога желети да користите број индекса листова, тако да можете уметнути лист на почетак или крај радне свеске:

Додај лист на крај радне свеске

Да бисте додали лист на крај радне свеске:

1 Схеетс.Адд Афтер: = Схеетс (Схеетс.Цоунт)

Додај лист на почетак радне свеске:

Да бисте додали лист на почетак радне свеске:

1 Схеетс.Адд (Бефоре: = Схеетс (1)). Наме = "ФирстСхеет"

Додај лист променљивој

Овај код додељује нови лист променљивој при креирању листа:

12 Дим вс Ас ВорксхеетСет вс = Схеетс.Адд

Одавде се можете позвати на нови лист са променљивом „вс“:

1 вс.наме = "ВарСхеет"

Још примера додавања листова

Направите лист ако већ не постоји

Можда ћете желети да направите лист само ако већ не постоји.

Направите радне листове са листе имена

Следећа рутина ће погледати садржај једне колоне постављене у Екцел радним листовима унутар тренутне радне свеске са овим именима. Позива другу функцију да види да ли лист са тим именом већ постоји и да ли лист није креиран.

1234567891011121314151617181920212223242526 Приватна под -командаБуттон1_Цлицк ()Позовите ЦреатеВорксхеетс (Схеетс ("Схеет2"). Ранге ("А1: а10"))Енд СубСуб ЦреатеВорксхеетс (Називи_О_ листова као опсег)Дим Но_Оф_Схеетс_то_бе_Аддед Ас ИнтегерДим Схеет_Наме Ас СтрингДим и Ас ИнтегерНо_Оф_Схеетс_то_бе_Аддед = Намес_Оф_Схеетс.Ровс.ЦоунтФор и = 1 За Но_Оф_Схеетс_то_бе_АддедСхеет_Наме = Намес_Оф_Схеетс.Целлс (и, 1) .Вредност'Додајте лист само ако већ не постоји и назив је дужи од нула знаковаАко је (Схеет_Екистс (Схеет_Наме) = Фалсе) И (Схеет_Наме "") ТадаВорксхеетс.Адд (). Наме = Схеет_НамеКрај АкоЗатим самЕнд Суб
1234567891011121314 Функционални лист_Екистс (назив радног листа_ као низ) Као логичкоДим Ворк_схеет Ас ВорксхеетЛист_Екистс = НетачноЗа сваки радни лист у овој радној свесци. Радни листовиАко је Ворк_схеет.Наме = Назив_радног листа ондаЛист_Екистс = ТачноКрај АкоСледећиЗавршна функција

Дакле, ако имамо следећи текст у ћелијама А1: А30 у листу 2:

Тада ће се креирати следећи листови:

Имајте на уму да иако се „Пас“ појављује два пута, ствара се само један лист.

Кликните овде да бисте преузели .КСЛС датотеку за овај водич.

Ви ће помоћи развој сајта, дељење страницу са пријатељима

wave wave wave wave wave