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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.06.2011, 14:59   #1
tae1980
Форумчанин
 
Регистрация: 02.02.2009
Сообщений: 844
По умолчанию Заменить стандратное название листа "Лист" на другое.

Когда создаешь лист, то он получает имя "ЛистN". Как заменить стандартное "Лист" на иное?
С уважением, Алексей.
tae1980 вне форума Ответить с цитированием
Старый 25.06.2011, 15:11   #2
Михаил С.
Пользователь
 
Регистрация: 02.06.2010
Сообщений: 57
По умолчанию

Создаете вручную или кодом? Заменить вручную или кодом?
Михаил С. вне форума Ответить с цитированием
Старый 25.06.2011, 16:23   #3
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Я же Вам показал в прошлой теме, как присвоить имя вставленному листу. Или это у Вас шутки такие?
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 25.06.2011, 16:54   #4
Александр 33
Пользователь
 
Регистрация: 02.01.2011
Сообщений: 10
По умолчанию

Типа так ?

Sub ПРОВЕР()
Sheets.Add After:=Sheets(Sheets.Count)
Sheets(Sheets.Count).Name = "РЕЗУЛЬТАТЫ! " & (Sheets.Count) & ""
End Sub
Александр 33 вне форума Ответить с цитированием
Старый 25.06.2011, 17:15   #5
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Тогда уж лучше так:
Код:
Sub ПРОВЕР()
With Sheets.Add(, Sheets(Sheets.Count))
.Name = "РЕЗУЛЬТАТЫ! " & (Sheets.Count)
End With
End Sub
или так, одной строкой
Код:
Sub tt()
Sheets.Add(, Sheets(Sheets.Count)).Name = "РЕЗУЛЬТАТЫ! " & Sheets.Count
End Sub
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 25.06.2011 в 17:19.
Hugo121 вне форума Ответить с цитированием
Старый 25.06.2011, 21:25   #6
tae1980
Форумчанин
 
Регистрация: 02.02.2009
Сообщений: 844
По умолчанию

Цитата:
Сообщение от kuklp Посмотреть сообщение
Я же Вам показал в прошлой теме, как присвоить имя вставленному листу. Или это у Вас шутки такие?
Переименовать лист не проблема. А вот как сделать так что бы лист сразу создавался с нужным именем?
С уважением, Алексей.
tae1980 вне форума Ответить с цитированием
Старый 25.06.2011, 21:41   #7
kuklp
Участник клуба
 
Регистрация: 02.05.2010
Сообщений: 1,390
По умолчанию

Создайте книгу с одним листом, назовите его Ежик и сохраните как шаблон. Теперь в других книгах, если захотите вставиль лист, в списке шаблонов выбирайте Ваш и Вам навставляются Ежики.
mailto: kuklp60@gmail.com, ящики для благодарностей:
WM Z206653985942, R334086032478, U238399322728
kuklp вне форума Ответить с цитированием
Старый 25.06.2011, 21:45   #8
tae1980
Форумчанин
 
Регистрация: 02.02.2009
Сообщений: 844
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Код:
Sub tt()
Sheets.Add(, Sheets(Sheets.Count)).Name = "РЕЗУЛЬТАТЫ! " & Sheets.Count
End Sub
А как задать кодовое имя?
И это все таки не со всем то. Хотелось бы изменить стандарное значение, для того что бы при любом способе создания листа оно получало нужное имя.
С уважением, Алексей.
tae1980 вне форума Ответить с цитированием
Старый 25.06.2011, 22:17   #9
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Код:
==============================================================
http://www.msoffice.nm.ru/faq/macros/module.htm

 Несмотря на то, что свойство CodeName доступно только для чтения, программное имя рабочего листа можно изменять, если не забывать, что модуль входит в семейство VBComponents.  
 
iCodeName = ActiveSheet.CodeName 

Application.VBE.ActiveVBProject.VBComponents(iCodeName).Name = "CodeName" ' Вариант I.

ActiveWorkbook.VBProject.VBComponents(iCodeName).Name = "CodeName" ' Вариант II. 

==============================================================
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 26.06.2011, 10:02   #10
tae1980
Форумчанин
 
Регистрация: 02.02.2009
Сообщений: 844
По умолчанию

Цитата:
Сообщение от kuklp Посмотреть сообщение
Создайте книгу с одним листом, назовите его Ежик и сохраните как шаблон. Теперь в других книгах, если захотите вставиль лист, в списке шаблонов выбирайте Ваш и Вам навставляются Ежики.
Это все понятно. Но как мне заставить пользователя так поступать. Кто муже меня устраивает автоматическая нумерация, но нужно заменит первую текстовую часть имени.
Как я понимаю значение "Лист" должно храниться в переменой экселя. Для достижения результата, в теории, должно быть достаточно просто заменить значение этой переменной при загрузке книги. И все.
Интересно имено это или подобное решение. Кто муже меня интересует впервую очередь кодовое имя. У такого решения очень много положительных сторон и самое главное совершенно не нужно контролировать пользователя, а он, да же если захочет, не сможет ни чем навредить (куда он денется с подводной лодки? :).
С уважением, Алексей.
tae1980 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Заменить в строке ":" на "." answ Паскаль, Turbo Pascal, PascalABC.NET 10 16.04.2010 20:27
Как макросом заменить пустые ячейки словом "пусто" KOSTIK1 Microsoft Office Excel 2 19.12.2009 14:10
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04