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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.02.2013, 20:14   #1
and150382
Форумчанин
 
Регистрация: 19.10.2012
Сообщений: 217
По умолчанию Очистка листов от данных

Здравствуйте !

Вывел на кнопку очистку листов.Эти листы под паролем. Когда нажимаю кнопку очистки - запрашивает пароль сначало для одного листа потом для другого.
Как сделать чтобы не спрашивал пароль, а сам снимал , а после очистки ставил?

Код на кнопке:

Private Sub CommandButton6_Click()
Sheets("Перекуры").Select
ActiveWindow.SmallScroll Down:=-15
Sheets("Перекуры").Select
ActiveSheet.Unprotect
ActiveWindow.SmallScroll Down:=-9
Range("B3:B42").Select
Selection.ClearContents
Range("D3:D42").Select
Selection.ClearContents
Range("F3:F42").Select
Selection.ClearContents
Range("H3:H42").Select
Selection.ClearContents
Range("J3:J42").Select
Selection.ClearContents
Range("L3:L42").Select
Selection.ClearContents
Range("N3:N42").Select
Selection.ClearContents
Range("P3:P42").Select
Selection.ClearContents
ActiveWindow.ScrollColumn = 2
Range("R3:R42").Select
Selection.ClearContents
ActiveWindow.ScrollColumn = 1
Range("B3").Select
Sheets("Перекуры").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFiltering:=True
Sheets("База").Select
ActiveWindow.SmallScroll Down:=-12
Sheets("База").Select
ActiveSheet.Unprotect
Range("B10:Q140").Select
Selection.ClearContents
ActiveWindow.ScrollColumn = 7
ActiveWindow.ScrollColumn = 6
ActiveWindow.ScrollColumn = 5
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 3
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 1
Selection.ClearContents
Range("C10:C140").Select
With Selection.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
ActiveWindow.SmallScroll Down:=-147
Range("C10").Select
Sheets("База").Select
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFiltering:=True
End Sub
and150382 вне форума Ответить с цитированием
Старый 14.02.2013, 20:39   #2
Watcher_1
Форумчанин
 
Аватар для Watcher_1
 
Регистрация: 22.06.2011
Сообщений: 325
По умолчанию

Код:
ActiveSheet.Protect Password:="Пароль для блокировки листа", DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFiltering:=True
ActiveSheet.Unprotect Password:="Пароль для разблокировки листа"
Заказать макрос можно на сайте http://excel4you.ru/
Watcher_1 вне форума Ответить с цитированием
Старый 14.02.2013, 20:40   #3
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

В начале макроса:
Код:
Sheets("Перекуры").Unprotect "ВашПароль" ' временно снимаем защиту
в конце макроса:
Код:
Sheets("Перекуры").Protect "ВашПароль" ' ставим защиту обратно
EducatedFool вне форума Ответить с цитированием
Старый 14.02.2013, 21:15   #4
and150382
Форумчанин
 
Регистрация: 19.10.2012
Сообщений: 217
По умолчанию

Спасибо большое!
and150382 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Очистка данных tanyuxxxa Помощь студентам 4 02.07.2012 10:46
Копирование данных из 2-ух листов в один Marishka2011 Microsoft Office Excel 0 01.04.2011 16:32
Очистка базы от устаревших данных Djuleta86 Microsoft Office Access 1 25.02.2011 18:20
Суммирование данных с разных листов S_P_N Microsoft Office Excel 12 02.06.2010 18:23
перенос данных из нескольких листов в 1 Екатрина Microsoft Office Excel 5 17.12.2009 18:28