Уважаемые! Как защитить Sheets от удаления?

Программирование на Visual Basic for Applications
Евген
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 66
Зарегистрирован: 01.07.2003 (Вт) 14:13
Откуда: СПб

Уважаемые! Как защитить Sheets от удаления?

Сообщение Евген » 01.07.2003 (Вт) 14:18

Здравия желаю! Подскажите пжалста как мне защитить Лист в Экселе от удаления :roll:
Ёж птица гордая, пока не пнешь - не полетит!

Vitaly1
Брехман
Брехман
 
Сообщения: 1578
Зарегистрирован: 30.12.2002 (Пн) 16:35
Откуда: Russia, Mosсow

Сообщение Vitaly1 » 01.07.2003 (Вт) 14:44

Меню: Сервис-Защита-Лист

Перед защитой можно правой клавишей установить не защищаемые ячейки.

corgi
ToyMan
ToyMan
 
Сообщения: 1367
Зарегистрирован: 01.10.2002 (Вт) 9:59
Откуда: Россия, Москва

Сообщение corgi » 01.07.2003 (Вт) 14:54

а вот и нет надо защищать книгу чтобы листы нельзя было удалять :roll:

Сервис->Защита->Защитить Книгу, защищать лучше только структуру
Ничто так не ограничивает полёт мысли программиста, как компилятор

Vitaly1
Брехман
Брехман
 
Сообщения: 1578
Зарегистрирован: 30.12.2002 (Пн) 16:35
Откуда: Russia, Mosсow

Сообщение Vitaly1 » 01.07.2003 (Вт) 14:57

Corgi - Вот это да, действительно, при защите листа, лист удаляется. Я считаю, что Microsoft не прав! :lol:

Евген
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 66
Зарегистрирован: 01.07.2003 (Вт) 14:13
Откуда: СПб

Сообщение Евген » 01.07.2003 (Вт) 15:03

Да через стандартные настройки не защитить, надо програмно реализовывать :?
Ёж птица гордая, пока не пнешь - не полетит!

Евген
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 66
Зарегистрирован: 01.07.2003 (Вт) 14:13
Откуда: СПб

Сообщение Евген » 01.07.2003 (Вт) 15:07

Еще беда в том что защитить надо изначально только определенные Листы. а в остальном можно добавлять и удалять
Ёж птица гордая, пока не пнешь - не полетит!

corgi
ToyMan
ToyMan
 
Сообщения: 1367
Зарегистрирован: 01.10.2002 (Вт) 9:59
Откуда: Россия, Москва

Сообщение corgi » 01.07.2003 (Вт) 15:07

2Евген :?: :?: :?:
2Vitaly1 я тоже так считал, когда первый раз на это наткнулся
Ничто так не ограничивает полёт мысли программиста, как компилятор

Vitaly1
Брехман
Брехман
 
Сообщения: 1578
Зарегистрирован: 30.12.2002 (Пн) 16:35
Откуда: Russia, Mosсow

Сообщение Vitaly1 » 01.07.2003 (Вт) 17:10

Предлагаю заблокировать соответствующие пункты меню при активизации листа и разблокировать их, к сожалению, не знаю имя контекстного меню, а в главном меню надо так:
Код: Выделить всё
Private Sub Worksheet_Activate()
Application.CommandBars.ActiveMenuBar.Controls("&Правка").Controls("Удалить &лист").Enabled = False
End Sub

Private Sub Worksheet_Deactivate()
Application.CommandBars.ActiveMenuBar.Controls("&Правка").Controls("Удалить &лист").Enabled = True
End Sub


Увы, ничего не получается, что бы узнать имя контекстного меню когда нажымаешь правую клавишу на имени листа, но думаю, что другие добрые люди помогут в этом. :)

Евген
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 66
Зарегистрирован: 01.07.2003 (Вт) 14:13
Откуда: СПб

Сообщение Евген » 01.07.2003 (Вт) 18:22

Спасибо за соучастие :) Жаль не шибко густо получилось :(
Ёж птица гордая, пока не пнешь - не полетит!

Vitaly1
Брехман
Брехман
 
Сообщения: 1578
Зарегистрирован: 30.12.2002 (Пн) 16:35
Откуда: Russia, Mosсow

Сообщение Vitaly1 » 01.07.2003 (Вт) 18:25

Давай напишим топик, что бы узнать имя контекстного меню?

Я уже написал, а если подскажут, сказать как сделать?

Евген
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 66
Зарегистрирован: 01.07.2003 (Вт) 14:13
Откуда: СПб

Сообщение Евген » 01.07.2003 (Вт) 18:29

Извини я пока Дуб-Дерево :), только учусь и что есть Топик и как найти контекстное меню для меня Большая ЗАГАДКА :)
Ёж птица гордая, пока не пнешь - не полетит!

Vitaly1
Брехман
Брехман
 
Сообщения: 1578
Зарегистрирован: 30.12.2002 (Пн) 16:35
Откуда: Russia, Mosсow

Сообщение Vitaly1 » 01.07.2003 (Вт) 18:31

А как мой программный код сделать ты знаешь?

Евген
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 66
Зарегистрирован: 01.07.2003 (Вт) 14:13
Откуда: СПб

Сообщение Евген » 01.07.2003 (Вт) 18:34

В принципе есть ежели что кому помочь
Ёж птица гордая, пока не пнешь - не полетит!

Vitaly1
Брехман
Брехман
 
Сообщения: 1578
Зарегистрирован: 30.12.2002 (Пн) 16:35
Откуда: Russia, Mosсow

Сообщение Vitaly1 » 01.07.2003 (Вт) 18:40

Код: Выделить всё
Private Sub Worksheet_Activate()
Application.CommandBars.ActiveMenuBar.Controls("&Правка").Controls("Удалить &лист").Enabled = False
Application.CommandBars("Имя контекстного меню").Controls("&Удалить").Enabled = False
End Sub

Private Sub Worksheet_Deactivate()
Application.CommandBars.ActiveMenuBar.Controls("&Правка").Controls("Удалить &лист").Enabled = True
Application.CommandBars("Имя контекстного меню").Controls("&Удалить").Enabled = true
End Sub


Когда ответят на мой вопрос этого форума "Имя контекстного меню Excel в зоне переименования листа" замени
"Имя контекстного меню" на соответствующие имя.
А как же ты программист VBA?...

Но защита листа на удаление будет работать только в режиме работающих макросов!

Евген
Обычный пользователь
Обычный пользователь
Аватара пользователя
 
Сообщения: 66
Зарегистрирован: 01.07.2003 (Вт) 14:13
Откуда: СПб

Сообщение Евген » 01.07.2003 (Вт) 18:44

Спасибочки, Это то пнятно Куда и чего, видимо я еще терминологию не очень освоил :\.
Ёж птица гордая, пока не пнешь - не полетит!

corgi
ToyMan
ToyMan
 
Сообщения: 1367
Зарегистрирован: 01.10.2002 (Вт) 9:59
Откуда: Россия, Москва

Сообщение corgi » 02.07.2003 (Ср) 0:01

а если защитить книгу потом макрос на открытие в котором ты разблокируешь книгу ну и добавляются твои меню а если макросы отключены то уж не судьба
Ничто так не ограничивает полёт мысли программиста, как компилятор


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9

    TopList