Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 23.04.2010, 07:19   #41
SAS888
Профессионал
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,162
Репутация: 1127
По умолчанию

Когда-то делал подобную вещь. Посмотрите здесь.
Пароль на VBA проект - "1234". При защищенном листе доступна работа с группами и автофильтром.
Там много лишнего. Уберите то, что Вам не требуется.
__________________
Чем шире угол зрения, тем он тупее.
SAS888 вне форума   Ответить с цитированием
Старый 27.04.2010, 11:29   #42
vlad-minsk
 
Регистрация: 20.04.2010
Сообщений: 9
Репутация: 10
По умолчанию

Добрый день! Большое спасибо! Буду разбириться.
vlad-minsk вне форума   Ответить с цитированием
Старый 28.04.2010, 10:59   #43
Poza
Новичок
 
Регистрация: 21.04.2010
Сообщений: 1
Репутация: 10
По умолчанию

Добрый день, у меня проблемка при разгруппировке открывается скрытый столбец, подскажите пожайлуста как это можно устранить? Большое спасибо!
Poza вне форума   Ответить с цитированием
Старый 09.08.2010, 14:08   #44
s8259
Пользователь
 
Регистрация: 27.07.2010
Сообщений: 48
Репутация: 10
По умолчанию

Цитата:
Сообщение от SAS888 Посмотреть сообщение
Не "обркзанные", а те, которые прописаны в опциях и заданы параметрами.
В любом случае, когда защиту листа устанавливает макрос, нужно во-первых, прописать все, что Вам требуется, во-вторых, это не сохраняется при закрытии файла. Чтобы решить все Ваши проблемы, нужно:
1. Включите макрорекордер, установите защиту листа вручную, с выбором всех необходимых опций (выделение, копирование, форматирование и т.п.), затем, отключите запись макроса, войдите в VBE и посмотрите полученный код. Для того, чтобы макросы, в отличии от пользователей, могли вносить изменения на защищенном листе не снимая и вновь устанавливая каждый раз защиту, добавьте опцию UserInterfaceOnly:=True. Этот код и используйте в макросе, устанавливающем защиту.
2. Многие опции защиты, установленные макросом, не сохраняются при сохранении файла. Поэтому, по событию открытия книги нужно снять сохраненную защиту и установить требуемую. Именно так и сделано в моем примере выше. При открытии файла запускаем макрос "Защитить", который делает все, что нужно.
Код:
Private Sub Workbook_Open(): Защитить: End Sub
Этот код должен быть расположен в модуле "Эта книга", а макрос "Защитить" - в общем программном модуле.
Добрый день SAS888!
Сделал все по вышеописанному алгоритму, при защите ячеек по выставленным условиям (разрешение выделения незаблокированных ячеек, работы автофильтра и изменение объектов) макрорекордер (Excel 2007) прописал код, который был перенесен в программный модуль, а также код запуска при открытии книги. Но при открытии файла, как и ранее, доступны заблокированные ячейки (с формулами). Может быть подскажете, в чем дело? Файл прилагаю.
Вложения
Тип файла: rar Качество доставки покупатели 2010.rar (414.4 Кб, 30 просмотров)
s8259 вне форума   Ответить с цитированием
Старый 18.08.2010, 08:47   #45
SAS888
Профессионал
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,162
Репутация: 1127
По умолчанию

У Вас в модуле "Эта книга" присутствуют 2 макроса с одинаковым именем "Private Sub Workbook_Open". Это не допустимо. Макрос "Защитить", который Вы, судя по всему, хотите выполнять при открытии, на мой взгляд не имеет смысла.
Пример исправленного файла во вложении. Что сделано не так, как Вам требуется?
Вложения
Тип файла: rar Качество доставки покупатели 2010.rar (420.5 Кб, 48 просмотров)
__________________
Чем шире угол зрения, тем он тупее.

Последний раз редактировалось SAS888; 18.08.2010 в 09:00.
SAS888 вне форума   Ответить с цитированием
Старый 21.03.2011, 11:52   #46
madex
Форумчанин
 
Регистрация: 07.02.2011
Сообщений: 61
Репутация: 10
По умолчанию

Имеется макрос. Как мне снять защиту во время выполнения макроса т.е.

Цитата:
Sub SaveReestr()
Msg = "Скопировать в реестр?"
Ans = MsgBox(Msg, vbYesNo)
If Ans = vbNo Then

Else
Снять защиту листа Реестр
Dim i As Integer, r As Object, p As Object
Set r = Workbooks("Товарный чек1.xls").Sheets("Реестр")
Set p = Workbooks("Товарный чек1.xls").Sheets("Чек")


For i = 2 To r.[a1].CurrentRegion.Rows.Count
If r.Cells(i, 1) = p.Cells(1, 2) Then Exit For
Next i

r.Cells(i, 1) = p.Cells(5, 2)
r.Cells(i, 2) = p.Cells(6, 2)
r.Cells(i, 3) = p.Cells(7, 2)
r.Cells(i, 4) = p.Cells(15, 5)
r.Cells(i, 5) = p.Cells(13, 5)
r.Cells(i, 6) = p.Cells(5, 3)
r.Cells(i, 7) = p.Cells(10, 1)
r.Cells(i, 8) = p.Cells(11, 1)
r.Cells(i, 9) = p.Cells(12, 1)
MsgBox "Сделано!"
Вернуть защиту листа реестр
End If
End Sub
madex вне форума   Ответить с цитированием
Старый 21.03.2011, 12:35   #47
The_Prist
Профессионал
 
Аватар для The_Prist
 
Регистрация: 17.07.2009
Адрес: Москва
Сообщений: 1,088
Репутация: 156
По умолчанию

Снять:
Код:
r.Unprotect "Пароль"
Вернуть защиту:
Код:
r.Protect "Пароль" 'через запятую параметры защиты
Еще посмотрите эту статью. Может больше подойдет.
__________________
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru
The_Prist вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как заставить работать макрос при защите листа qwertyuzer Microsoft Office Excel 4 11.02.2009 16:20
Формирование листа при множественом выборе файлов Руслантус Общие вопросы C/C++ 2 09.08.2008 23:16
Добрый день и снова вопрос по защите) Wasily Microsoft Office Excel 17 18.06.2008 10:26
При закрытии листа, стираются данные Romuald Microsoft Office Excel 2 20.12.2007 14:24
Удалить строку листа Excel при выполнении условия Gennady Microsoft Office Excel 14 18.12.2007 14:54


14:11.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.