Страницы: 1 2 След.
RSS
[ Закрыто ] Как запредить редактирования определенных ячеек
 
       Требуется запретить редактирование ячеек A5:A10 при условии значения в ячейке А11 меньше 4. Ячейка А11 считает кол-во пустых ячеек в диапазоне. Требуется запретить редактирование диапазона при значении меньше 4. например ; сотрудник открывает файл / значение диапазона 4/ хочет поставить "в" , при этом значение А11 станет 3....а это запрещено. Наверно даже не запрет на редактирование а запрет на сохранение при нарушении данного условия, с выдачей сообщения "Там то там то меньше стольки то исправьте или все изменения не сохраняться"
       По таким настройкам екселя совсем не разбираюсь...сколько форумов перечитал не могу найти подобного.
 
Может Проверка данных спасёт?
 
Только как добавить/изменить данные, если это нужно?
 
Не спасет т.к. пользователь меняет значение других ячеек / не А11, ну либо я просто не знаю как настроить/. Наткнулся на такое. запрет на закрытие файла если нет надписи в А1
Код
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If Range("a1").Value <> "denizen" Then
Cancel = True
End If
End Sub
Думаю нужно что то аналогичное. Если на листе Х в строе А11:А31 значение менее 4 то сохранить не получается ... ну и уведомление добавить.
 
Цитата
Юрий М написал:
как добавить/изменить данные, если это нужно?
 
при открытии файла редактирование разрешено, но при несоблюдении условия сохранить не получается. По моему как то так))
 
Вы не поняли: представьте, что решение найдено и редактирование указанных ячеек запрещено. А если всё же нужно поменять? Каким образом вместо 2 сделать 4?
 
Цитата
Юрий М написал:
Каким образом вместо 2 сделать 4?
ну да действительно))
Цитата
Юрий М написал:
и редактирование указанных ячеек запрещено
ТОгда не надо запрещать редактирование . В начале, когда создается новый лист, значение А11 всегда больше чем требуемое (иногда надо не 4 а 5 и т.д.) юзер ставит значение и если А11 не упало ниже требуемого то все ок. Это делается для составления графика выходных. Требуется не дать возможности наставить выходных на один день больше нормы. А11 это минимальное кол-во сотрудников в этот день
 
Вот вариант для столбца А - возможно заполнение только двух ячеек.
 
Фантастика)) Вроде то что нужно. А как поставить диапазон А10 по А "то которое надо" . Каждый месяц разно кол-лво дней. И еще надо лист выбирать их там 12 будет.
 
А вот вариант для трёх столбцов. Формул в строке 11 нет - эти ограничения задаёт "администратор" )
 
Цитата
Юрий М написал: Формул в строке 11 нет - эти ограничения задаёт "администратор" )
Вот тут я не понял задает то он как ограничения эти? Сам не могу понять код совсем не знаю((
 
Я ведь не знаю, какое ограничение у Вас по дням недели - руками вписываете нужное. Можно эти ограничения написать в первой строке, её скрыть. Только нужно будет чуть переделать макрос.
 
Цитата
Юрий М написал:
Я ведь не знаю, какое ограничение у Вас по дням недели
Это понятно. а вот где вписывать эти ограничения?
Цитата
Юрий М написал:
первой строке
можно и так, при создании нового месяца просто буду ставить пороговое значение на каждый день.
 
Цитата
SanekShir написал:
а вот где вписывать эти ограничения?
В примере в строке 11.
 
в диапазоне А1:А10 допускается не более 6 значений)
(контроль проверкой данных)
попробуйте за х и у дописать 3-ю букву (получите соотв. результат)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
А вот вариант, где Вы в первой строке прописываете ограничения для каждого из трёх столбцов.
 
Цитата
Ігор Гончаренко написал:
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
У нас есть программист 1С мы часто не понимаем друг друга 8))

ммм ... вроде даже подходит такое решение...попробую прикинуть на рабочем графике
 
Цитата
Ігор Гончаренко написал:
контроль проверкой данных
А я ведь предлагал проверку данных - отказались )
Вариант из #19 смотрели?
 
Цитата
Юрий М написал: Вариант из #19 смотрели?
как то мне больше нравиться....попробую  применить на живом графике.
С проверкой данных настройка трудоемкая..
 
Цитата
SanekShir написал:
попробую  применить на живом графике.
Мозгов не хватило))
Intersect(Target, Range("Ñ5:AG10"))  поправил диапазон
а где прописана строка с параметром понять не могу
 
Cells(1, Target.Column)
1 - первая строка
 
СПАСИБО. Вроде работает. попробую в ПН на работе сделать...посмотрим как на практике сработает. Сам вроде потыкал, работает так как надо, НО народ у нас изобретательный до жути)).
 
Можно первую строку (строку с ограничениями) разместить на другом (очень скрытом листе), тогда возможностей у изобретательных будет поменьше.
 
Цитата
Юрий М написал:
разместить на другом (очень скрытом листе)
А настроить ссылку на другой лист как?
 
Просто добавьте имя листа:
Код
> Sheets("Лист2").Cells(1, Target.Column) Then Application.Undo


 
на 6 декабря каким то образом получилось сломать ограничение)) в этот же  день при попытке вставить еще вых., выдает ошибку....пока писал понял  как. При запуске файла выдает предупреждение №запуск макросов  отключен"...А как сделать что бы без включенных макросов не разрешалось  открывать файл? Видимо у кого то у сотрудников эта функция активирована  (где то в параметрах безопасности.).

Вот такая вишечка на обкатке всплыла))
 
Цитата
SanekShir написал:
как сделать что бы без включенных макросов не разрешалось  открывать файл?
Почитайте  здесь  
 
угу...попробуем, но уже завтра...
 
Всем снова привет. Обошли данную защиту простым путем.
1.ставим значение в соседнюю строчку /где дает ставить/
2. протаскиваем / выделяем ячейку и тащим ее за нижний правый угол/ ее до нужного нам места / идет заполнение по всей строке и макрос не срабатывает/

еле вычисли и все молчат. Как я был зол просто ужас.
Как можно запретить данное действие?  
Страницы: 1 2 След.
Наверх