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

Вход

Регистрация

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

 

= Мир MS Excel/ВСЕ ячейки должны стать защищенным при закрытии файла - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » ВСЕ ячейки должны стать защищенным при закрытии файла (Макросы/Sub)
ВСЕ ячейки должны стать защищенным при закрытии файла
ASV Дата: Среда, 08.11.2017, 09:37 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Прошу помочь решить такую задачу.
Есть файл с множеством листов и формул. Все листы защищены паролем. На каждом листе есть пустые незащищенные ячейки, предназначенные для ввода информации пользователем.
Что требуется: Если на каком-то определенном листе пользователем была заполнена хоть одна доступная ему (незащищенная) ячейка, то после закрытия файла, ВСЕ ячейки на ЭТОМ листе, которые пользователю были доступны ранее, перестают быть доступными (становятся защищенными). Т.е. пользователь лишается возможности вносить изменения на листе после того, как уже внес значения и закрыл файл.
 
Ответить
СообщениеПрошу помочь решить такую задачу.
Есть файл с множеством листов и формул. Все листы защищены паролем. На каждом листе есть пустые незащищенные ячейки, предназначенные для ввода информации пользователем.
Что требуется: Если на каком-то определенном листе пользователем была заполнена хоть одна доступная ему (незащищенная) ячейка, то после закрытия файла, ВСЕ ячейки на ЭТОМ листе, которые пользователю были доступны ранее, перестают быть доступными (становятся защищенными). Т.е. пользователь лишается возможности вносить изменения на листе после того, как уже внес значения и закрыл файл.

Автор - ASV
Дата добавления - 08.11.2017 в 09:37
Фомулист Дата: Среда, 08.11.2017, 11:00 | Сообщение № 2
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 169
Репутация: -13 ±
Замечаний: 60% ±

Excel 2003
Хотите подлость сделать пользователю?


Терпение и труд всё перетрут!
 
Ответить
СообщениеХотите подлость сделать пользователю?

Автор - Фомулист
Дата добавления - 08.11.2017 в 11:00
ASV Дата: Четверг, 09.11.2017, 08:51 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Вовсе нет. Здесь вопрос безопасности - файл предназначен для отражения кассовых операций. Данные файла должны передаваться в бухгалтерию, где на его основании проведут операции в 1С. Но, если вдруг пользователь внесет изменения в уже проведенную ранее операцию, то соответственно не будет сходится остаток с данными в 1С - что влечет за собой негативные последствия в виде недостачи или излишков денег в кассе - а это материальная ответственность. Поэтому лучше лишить пользователя возможности вносить изменения, если он уже отразил операцию и закрыл файл. А в случае необходимости ему предоставят доступ (откроют доступ с помощью пароля), но это уже будет санкционировано и по согласованию.
 
Ответить
СообщениеВовсе нет. Здесь вопрос безопасности - файл предназначен для отражения кассовых операций. Данные файла должны передаваться в бухгалтерию, где на его основании проведут операции в 1С. Но, если вдруг пользователь внесет изменения в уже проведенную ранее операцию, то соответственно не будет сходится остаток с данными в 1С - что влечет за собой негативные последствия в виде недостачи или излишков денег в кассе - а это материальная ответственность. Поэтому лучше лишить пользователя возможности вносить изменения, если он уже отразил операцию и закрыл файл. А в случае необходимости ему предоставят доступ (откроют доступ с помощью пароля), но это уже будет санкционировано и по согласованию.

Автор - ASV
Дата добавления - 09.11.2017 в 08:51
nilem Дата: Четверг, 09.11.2017, 08:56 | Сообщение № 4
Группа: Авторы
Ранг: Старожил
Сообщений: 1324
Репутация: 470 ±
Замечаний: 0% ±

Excel 2013
ВСЕ ячейки на ЭТОМ листе, которые пользователю были доступны ранее, перестают быть доступными (становятся защищенными)

Но д.б.возможность сделать эти самые ячейки обратно незащищенными. Так ведь?
Т.е. это какие-то фиксированные диапазоны на каждом из листов - их нужно делать то защищенными, то нет. Так?


Яндекс.Деньги 4100159601573
 
Ответить
Сообщение
ВСЕ ячейки на ЭТОМ листе, которые пользователю были доступны ранее, перестают быть доступными (становятся защищенными)

Но д.б.возможность сделать эти самые ячейки обратно незащищенными. Так ведь?
Т.е. это какие-то фиксированные диапазоны на каждом из листов - их нужно делать то защищенными, то нет. Так?

Автор - nilem
Дата добавления - 09.11.2017 в 08:56
ASV Дата: Четверг, 09.11.2017, 09:28 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Именно так.
 
Ответить
СообщениеИменно так.

Автор - ASV
Дата добавления - 09.11.2017 в 09:28
nilem Дата: Четверг, 09.11.2017, 09:46 | Сообщение № 6
Группа: Авторы
Ранг: Старожил
Сообщений: 1324
Репутация: 470 ±
Замечаний: 0% ±

Excel 2013
Наверное, придется где-то (на скрытом листе, напр.) записывать адреса этих ячеек/диапазонов. Примерчик файла можете показать?


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеНаверное, придется где-то (на скрытом листе, напр.) записывать адреса этих ячеек/диапазонов. Примерчик файла можете показать?

Автор - nilem
Дата добавления - 09.11.2017 в 09:46
ASV Дата: Четверг, 09.11.2017, 10:26 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
В этом файле два листа. Все незащищенные ячейки, предназначенные для ввода данных пользователем, выделены зеленым цветом. Остальные все защищены. Таких листов, как "1" здесь будет 31 - по 1 листу на каждый день месяца. Страница "Старт" - это стартовая страница, с которой начинается работа с файлом, здесь указываются начальные данные. Получается, нужно чтобы срабатывала блокировка ячеек (зеленых) на листе "Старт" и листах "1-31".
К сообщению приложен файл: _-.xlsx(49Kb)
 
Ответить
СообщениеВ этом файле два листа. Все незащищенные ячейки, предназначенные для ввода данных пользователем, выделены зеленым цветом. Остальные все защищены. Таких листов, как "1" здесь будет 31 - по 1 листу на каждый день месяца. Страница "Старт" - это стартовая страница, с которой начинается работа с файлом, здесь указываются начальные данные. Получается, нужно чтобы срабатывала блокировка ячеек (зеленых) на листе "Старт" и листах "1-31".

Автор - ASV
Дата добавления - 09.11.2017 в 10:26
nilem Дата: Четверг, 09.11.2017, 11:32 | Сообщение № 8
Группа: Авторы
Ранг: Старожил
Сообщений: 1324
Репутация: 470 ±
Замечаний: 0% ±

Excel 2013
Можно попробовать с именованными диапазонами
см. файл
К сообщению приложен файл: -65654.xlsm(59Kb)


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеМожно попробовать с именованными диапазонами
см. файл

Автор - nilem
Дата добавления - 09.11.2017 в 11:32
ASV Дата: Четверг, 09.11.2017, 12:10 | Сообщение № 9
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Что-то не срабатывает. Может я что-то не так делаю?.. :(
Я вашем в коде есть привязка к цвету ячеек "... Interior.ColorIndex = 36 ..."
Может быть на разных компьютерах цвета по разному отображаются? Потому что изначально были цвета зеленые, а сейчас после вставки макроса стали бледно желтыми (или так и было задумано?).
Или цвета здесь не имеют значения?
 
Ответить
СообщениеЧто-то не срабатывает. Может я что-то не так делаю?.. :(
Я вашем в коде есть привязка к цвету ячеек "... Interior.ColorIndex = 36 ..."
Может быть на разных компьютерах цвета по разному отображаются? Потому что изначально были цвета зеленые, а сейчас после вставки макроса стали бледно желтыми (или так и было задумано?).
Или цвета здесь не имеют значения?

Автор - ASV
Дата добавления - 09.11.2017 в 12:10
ASV Дата: Четверг, 09.11.2017, 12:20 | Сообщение № 10
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Я впервые пробую применить макрос... Так что не судите строго, если что...
 
Ответить
СообщениеЯ впервые пробую применить макрос... Так что не судите строго, если что...

Автор - ASV
Дата добавления - 09.11.2017 в 12:20
nilem Дата: Четверг, 09.11.2017, 14:11 | Сообщение № 11
Группа: Авторы
Ранг: Старожил
Сообщений: 1324
Репутация: 470 ±
Замечаний: 0% ±

Excel 2013
Interior.ColorIndex = 36 закомментировано в коде, это просто чтобы выделить цветом именованные диапазоны, которые обрабатывает код.
Открываем книгу (макросы д.б. разрешены), нажимаем Alt+F8, выбираем LockRanges - Выполнить. Ячейки в желтых диапазонах защищены.
Опять Alt+F8, выбираем UnLockRanges - Выполнить. Защита с ячеек в желтых диапазонах снята.
Можно добавить листов, создать новые именованные диапазоны (уровня книги) с именами "LockRng4", "LockRng5" ..., - макросы будут работать со всеми именами, кот. есть в книге.


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеInterior.ColorIndex = 36 закомментировано в коде, это просто чтобы выделить цветом именованные диапазоны, которые обрабатывает код.
Открываем книгу (макросы д.б. разрешены), нажимаем Alt+F8, выбираем LockRanges - Выполнить. Ячейки в желтых диапазонах защищены.
Опять Alt+F8, выбираем UnLockRanges - Выполнить. Защита с ячеек в желтых диапазонах снята.
Можно добавить листов, создать новые именованные диапазоны (уровня книги) с именами "LockRng4", "LockRng5" ..., - макросы будут работать со всеми именами, кот. есть в книге.

Автор - nilem
Дата добавления - 09.11.2017 в 14:11
ASV Дата: Четверг, 09.11.2017, 14:38 | Сообщение № 12
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Спасибо. Буду испытывать.
 
Ответить
СообщениеСпасибо. Буду испытывать.

Автор - ASV
Дата добавления - 09.11.2017 в 14:38
Мир MS Excel » Вопросы и решения » Вопросы по VBA » ВСЕ ячейки должны стать защищенным при закрытии файла (Макросы/Sub)
Страница 1 из 11
Поиск:

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