Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - [решено] Excel. Присвоить имя листу с определенной ячейки.

Ответить
Настройки темы
VBA - [решено] Excel. Присвоить имя листу с определенной ячейки.

Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Вложения
Тип файла: xls Пример.xls
(13.5 Kb, 26 просмотров)
Здравствуйте!
Возник вопрос. Как присвоить имя листу экселя значение с определенной ячейки, т.е. нужно чтоб при изменении значения в ячейки "В2" изменялось имя текущего листа на то значение в ячейке. Ячейка является раскрывающимся списком. Пример в приложенном файле.

Отправлено: 12:53, 19-03-2013

 

Аватара для Delirium

Ветеран


Сообщения: 5624
Благодарности: 936

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If ActiveWorkbook.ActiveSheet.Name <> ActiveWorkbook.ActiveSheet.Range("B2") Then
    ActiveWorkbook.ActiveSheet.Name = ActiveWorkbook.ActiveSheet.Range("B2")
    End If
End Sub
Вешаем событие на SheetChange для книги. Оно происходит при любом изменении в книге. В коде сверяется текущее имя книги и значение в ячейке. Если они не равно, происходит присваивание имени.
Можно и без проверки значения, но зачем эти лишние присваивания.
Вместо B2 ставим нужную ячейку и будет счастье

А вообще все это делается очень просто. Запускается запись макроса - изменяем имя книги, изменяем значение в ячейке - останавливаем макрос. Смотрим полученный код, там есть все, что нужно.

-------

Пройденные курсы:
[Microsoft №10174 Sharepoint], [SharePoint]
Мои проекты:[CheckAdmins], [NetSend7], [System Uptime], [Remote RAdmin LogViewer],[Netdom GDI], [Holidays - напоминалка о днях рождения]

А я офис-гуру :)

Это сообщение посчитали полезным следующие участники:

Отправлено: 14:25, 19-03-2013 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Спасибо! Все получилось.
А можно сделать не для всей книги, а только для отдельного листа?

Отправлено: 15:14, 19-03-2013 | #3


Новый участник


Сообщения: 40
Благодарности: 19

Профиль | Отправить PM | Цитировать


Цитата andre-tr:
А можно сделать не для всей книги, а только для отдельного листа? »
А Вам что показали? Как раз меняется один текущий лист (что просили, то и дадено). Если надо изменить другой, то вместо ActiveSheet подставляем Worksheets(номер_листа).
Это сообщение посчитали полезным следующие участники:

Отправлено: 09:36, 20-03-2013 | #4


Новый участник


Сообщения: 3
Благодарности: 0

Профиль | Отправить PM | Цитировать


Спасибо за ответ, разобрался.

Отправлено: 10:28, 20-03-2013 | #5



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - [решено] Excel. Присвоить имя листу с определенной ячейки.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
2007 - Excel - цвет ячейки и формат Furu Microsoft Office (Word, Excel, Outlook и т.д.) 7 20-01-2011 11:58
2010 - Excel :: Вставка рисунка внутрь ячейки Ciber SLasH Microsoft Office (Word, Excel, Outlook и т.д.) 5 19-08-2010 18:54
7 / 2008 R2 - [решено] Присвоить имя компьютеру Hector Автоматическая установка Windows 11 / 10 / 8 / 7 / Vista 5 24-04-2010 01:51
2007 - Excel | Вопрос по автоматическому изменению формата ячейки AlexM Microsoft Office (Word, Excel, Outlook и т.д.) 0 04-02-2010 06:43
Программное форматирование ячейки в Excel vlastek Программирование и базы данных 2 26-11-2004 11:07




 
Переход