Защита листа Excel от нелегального использования

Программирование на Visual Basic for Applications
Nazar
Новичок
Новичок
 
Сообщения: 31
Зарегистрирован: 03.05.2004 (Пн) 21:07

Защита листа Excel от нелегального использования

Сообщение Nazar » 28.05.2004 (Пт) 16:59

Есть некий бланк документа, нарисованный в Excel.
Требуется защитить бланк от нелегального использования.
Вариант "Установить защиту листа" или "Установить защиту книги" не подходит, т.к. в этом случае можно выделить все ячейки, скопировать выделенное в буфер и вставить в новый лист. Видимо нужно программным образом (при открытии файла) заблокировать возможность выделения ячеек и копирования данных.
Как сделать?????

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

Сообщение Евген » 28.05.2004 (Пт) 17:57

Worksheet_SelectionChange(ByVal Target As Range)
Worksheet_Change(ByVal Target As Range)
- попробуй в ту сторону копать, может сгодиться
Ёж птица гордая, пока не пнешь - не полетит!

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

Сообщение corgi » 28.05.2004 (Пт) 19:17

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

Nazar
Новичок
Новичок
 
Сообщения: 31
Зарегистрирован: 03.05.2004 (Пн) 21:07

По поводу отключения макросов

Сообщение Nazar » 28.05.2004 (Пт) 21:23

ага а я макросы отключу и вся ваша защита
_________________

Это я уже продумал. Перед сохранением рабочей книги делается и запускается макрос
Worksheets(1).visible=False
или в VBA в свойствах листа ставим Visible=False.
При легальном открытии файла программа ставит
Worksheets(1).visible=True. Так что отключение макросов нестрашно, а уровень пользователей таков, что и формулу в ячейку записать не все могут.

Nazar
Новичок
Новичок
 
Сообщения: 31
Зарегистрирован: 03.05.2004 (Пн) 21:07

Все получилось.

Сообщение Nazar » 30.05.2004 (Вс) 20:41

Спасибо, Евген за идею. Воспользовался методом
Worksheet_SelectionChange(ByVal Target As Range).


Вернуться в VBA

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

Сейчас этот форум просматривают: Yandex-бот и гости: 120

    TopList