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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.04.2009, 03:58   #1
КаМММ
Почти "Чайник"
Форумчанин
 
Аватар для КаМММ
 
Регистрация: 09.06.2008
Сообщений: 134
По умолчанию Защита листа вновь созданой макросом книги.

Есть книга напичканая макросамии формулами.
По итогам вычислений она создаёт файл с данными.
Задача защитить эти данные от копирования средствами эксель.
Данные можно смотреть, распечатывать, но нельзя выделять и копировать, а так-же можно добавлять значения в незащищённые ячейки. (есть скрытые столбцы которые от чужих глаз и прячем)
У меня стоит Эксель2003.
Сейчас запись сохранения выглядит так:
Код:
ИмяНаряда = №Заказ & " от " & Дата & " " & Заказчик & " " & Менеджер & ".xls"    
Метка:
Filt = "Файлы Таблиц(*.xls),*.xls"
Name = Application.GetSaveAsFilename(ИмяНаряда, FileFilter:=Filt, Title:="Сохранение Данных в файл!") 'имя файла'
If Name = False Then Exit Function
... Втавка данных ... скрытие столбцов...
With ActiveSheet '     Заголовок Листа
.PageSetup.LeftHeader = "Набрал: " & Менеджер & Chr(10) & "Проверил_________"
.PageSetup.CenterHeader = "Наряд " & Name1
.PageSetup.RightHeader = "&P& из &N" & Chr(10) & "Сохранён " & Дата
.Protect Password:= Пароль DrawingObjects:=True, Contents:=True, Scenarios:=True
.EnableSelection = xlUnlockedCells
End With
On Error Resume Next
ActiveWorkbook.SaveAs FileName:=Name1, FileFormat:=xlNormal, CreateBackup:=False
    If Err = 0 Then Текст = "Заказ сохранен под именем   " & Name1
Call Лейбл 'Сообщение что сохранён удачно.'
ActiveWorkbook.Close False
Что нужно длбавить чтобы: 1. В создаваемой книге был только 1 лист. (сейчас из бывает 3 а 2 удаляются макросом перед сохранением)
2. чтобы после сохранения с защитой нельзя было выделить блокированные ячейки, но можно добавить данные в неблокированные.
3. нельзя было менять колонтитулы.

Последний раз редактировалось КаМММ; 27.04.2009 в 04:01.
КаМММ вне форума Ответить с цитированием
Старый 27.04.2009, 06:14   #2
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Посмотрите пример во вложении.
При открытии книги, чтобы пользователь не смог изменить колонтитулы, доступ к параметрам страницы будет запрещен. При закрытии книги, доступ возобновляется. Еще есть 2 макроса. Макрос "Create1Sheets" создает новую книгу с одним рабочим листом. Макрос "myProtect" защищает лист с блокировкой выделения заблокированных ячеек.
Вложения
Тип файла: rar Книга1.rar (6.2 Кб, 15 просмотров)
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Структура данных и защита листа Legame Microsoft Office Excel 47 25.06.2019 11:03
снятие пароля с книги/листа из другой книги? Bezdar Microsoft Office Excel 3 25.12.2008 11:59
Копирование листа в другую книгу макросом xamillion Microsoft Office Excel 9 11.10.2008 08:59
Защита листа, отключает работу макроса valerij Microsoft Office Excel 6 30.03.2008 22:22
Защита листа! Marsik Microsoft Office Excel 2 27.03.2008 18:19