Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.01.2011, 16:40   #1
Richard123
Пользователь
 
Регистрация: 17.01.2011
Сообщений: 26
По умолчанию Создать листи с именами предыдущих листов

Добрый день!

Вопрос, как в VBA решить следующую задачу:
Есть листы их кол-во неопределено и содеражние не важно.
Нужно создать новые листы (их кол-во равно имеющимся листам), где именем каждого нового листа будет "T_Лист1", где "Лист1" - любое имя имеющегося листа, а "Т_" - добавление для имени ново листа.
Эту нужно сделать для всех листов в книге.

Помогите пожалуйста!)
Richard123 вне форума Ответить с цитированием
Старый 21.01.2011, 20:54   #2
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Используйте цикл по Worksheets(i) и свойство Name. Макрос создания листа можете записать и вставить код
motorway вне форума Ответить с цитированием
Старый 21.01.2011, 21:23   #3
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Так можно, проверяйте
Код:
Sub tt()
    ShCount = Sheets.Count
    For i = 1 To ShCount
        IName = Sheets(i).Name
        Worksheets.Add.Name = "Т_" & IName
        Sheets("Т_" & IName).Move After:=Sheets(Sheets.Count)
    Next i
End Sub
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума Ответить с цитированием
Старый 24.01.2011, 13:25   #4
Richard123
Пользователь
 
Регистрация: 17.01.2011
Сообщений: 26
По умолчанию

Спасибо!) А подскажите пожалуйста, в чем разница между обычным NEXT и Next i?
Richard123 вне форума Ответить с цитированием
Старый 24.01.2011, 13:51   #5
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

В данном, конкретном примере - ничем.
i - переменная, определяющая число повторений цикла.
Next - ключевое слово, при достижении которого значение счётчика изменяется на величину шага, после чего управление опять переходит в начало цикла.
Поскольку в данном примере только одна управляющая инструкция For Next, i можно опустить. А вот если будет несколько таких конструкций, да еще вложенных одна в одну указание переменной в конце next обязательно.
Но я так привык, всегда указываю переменную.
да Вы попробуйте сами))
Все прояснится.
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума Ответить с цитированием
Старый 24.01.2011, 14:04   #6
Richard123
Пользователь
 
Регистрация: 17.01.2011
Сообщений: 26
По умолчанию

Вникаю, вникаю) Всем большое спасибо за знания))
Richard123 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
создать таблицу с подстановкой данных с листов того же файла Jlia Microsoft Office Excel 1 02.08.2010 21:39
создать таблицу подстановкой столбцов со 100 листов того же файла EvgeniyaZ Microsoft Office Excel 4 16.05.2010 00:51
Как создать кнопку для всех листов книги? kipish_lp Microsoft Office Excel 5 06.05.2010 17:43
Создать поочередно заранее неизвестное количество листов в книге ShamanK Microsoft Office Excel 1 01.05.2010 18:40
Создать в каталоге, 35 подкаталогов с именами лат. алфавита и 0-9 XerSon Помощь студентам 2 02.12.2009 19:31