Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Защищенный лист и макрос - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Защищенный лист и макрос (Макросы/Sub)
Защищенный лист и макрос
Рaмиля Дата: Среда, 13.01.2016, 12:59 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 21
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Имеется макрос для скрытия пустых строк и на отображение скрытых строк, начиная с 17-й строки.На защищенном листе макрос выдает ошибку 1004. Что нужно сделать, чтобы пользователь имел возможность воспользоваться макросом.
[vba]
Код

Public Sub HideRowCol()
Dim lr&, lc, i
lr = [a65536].End(xlUp).Row
lc = [iv2].End(xlToLeft).Column
Application.ScreenUpdating = False
For i = 17 To lr
If WorksheetFunction.Sum(Range(Cells(i, 1), Cells(i, lc))) = 0 Then Rows(i).Hidden = True
Next
For i = 17 To lc
If WorksheetFunction.Sum(Range(Cells(3, i), Cells(lr, i))) = 0 Then Columns(i).Hidden = True
Next
Application.ScreenUpdating = True
End Sub

Public Sub UnHideRowCol()
Dim lr&, lc, i
lr = [a65536].End(xlUp).Row
Application.ScreenUpdating = False
For i = 17 To lr
Cells.EntireRow(i).Hidden = False
Next
Application.ScreenUpdating = True
End Sub
[/vba]


Сообщение отредактировал Manyasha - Среда, 13.01.2016, 13:07
 
Ответить
СообщениеИмеется макрос для скрытия пустых строк и на отображение скрытых строк, начиная с 17-й строки.На защищенном листе макрос выдает ошибку 1004. Что нужно сделать, чтобы пользователь имел возможность воспользоваться макросом.
[vba]
Код

Public Sub HideRowCol()
Dim lr&, lc, i
lr = [a65536].End(xlUp).Row
lc = [iv2].End(xlToLeft).Column
Application.ScreenUpdating = False
For i = 17 To lr
If WorksheetFunction.Sum(Range(Cells(i, 1), Cells(i, lc))) = 0 Then Rows(i).Hidden = True
Next
For i = 17 To lc
If WorksheetFunction.Sum(Range(Cells(3, i), Cells(lr, i))) = 0 Then Columns(i).Hidden = True
Next
Application.ScreenUpdating = True
End Sub

Public Sub UnHideRowCol()
Dim lr&, lc, i
lr = [a65536].End(xlUp).Row
Application.ScreenUpdating = False
For i = 17 To lr
Cells.EntireRow(i).Hidden = False
Next
Application.ScreenUpdating = True
End Sub
[/vba]

Автор - Рaмиля
Дата добавления - 13.01.2016 в 12:59
RAN Дата: Среда, 13.01.2016, 13:14 | Сообщение № 2
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Читать, читать и применять.


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеЧитать, читать и применять.

Автор - RAN
Дата добавления - 13.01.2016 в 13:14
SLAVICK Дата: Среда, 13.01.2016, 13:16 | Сообщение № 3
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
Что нужно сделать, чтобы пользователь имел возможность воспользоваться макросом.

Снять защиту с листа.
Можно макросом
[vba]
Код
ActiveSheet.Unprotect "123"
---- потом
ActiveSheet.Protect "123"
[/vba]


Иногда все проще чем кажется с первого взгляда.
 
Ответить
Сообщение
Что нужно сделать, чтобы пользователь имел возможность воспользоваться макросом.

Снять защиту с листа.
Можно макросом
[vba]
Код
ActiveSheet.Unprotect "123"
---- потом
ActiveSheet.Protect "123"
[/vba]

Автор - SLAVICK
Дата добавления - 13.01.2016 в 13:16
devilkurs Дата: Среда, 13.01.2016, 13:18 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 167
Репутация: 43 ±
Замечаний: 0% ±

Excel 2007, 2010
Снять защиту (если защита без пароля убрать Password:="пароль")
[vba]
Код
Sheets(Лист1).Unprotect Password:="пароль"
[/vba]

Поставить защиту
[vba]
Код
Sheets(Лист2).Protect Password:="пароль"
[/vba]


 
Ответить
СообщениеСнять защиту (если защита без пароля убрать Password:="пароль")
[vba]
Код
Sheets(Лист1).Unprotect Password:="пароль"
[/vba]

Поставить защиту
[vba]
Код
Sheets(Лист2).Protect Password:="пароль"
[/vba]

Автор - devilkurs
Дата добавления - 13.01.2016 в 13:18
Рамиля Дата: Понедельник, 08.02.2016, 15:53 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 23
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Спасибо Всем! Получилось!
 
Ответить
СообщениеСпасибо Всем! Получилось!

Автор - Рамиля
Дата добавления - 08.02.2016 в 15:53
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Защищенный лист и макрос (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!