|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
16.11.2012, 18:25 | #1 |
Регистрация: 16.11.2012
Сообщений: 5
|
условие в цикле с блокировкой колонок
Добрый день! обыскал весь форум, не нашел ничего подходящего. Помогите пожалуйста в макросе, а именно - есть график, в нем люди ставят свои дежурства, каждые день - одна колонка. Как можно блокировать колонку для дальнейшего ввода при условии когда в ней насобирается три заполненые ячейки (скажем цифрами 1,или 2)?
Как я понимаю, чтоб оно работало на каждую колонку отдельно, наверное нужен цикл, в котором условие будет проверять количество ячеек, суммировать их, и в случае если оно = 3 то выполнятся функция N которая будет блокировать диапозон ячеек в колонке. Правильно? Если так, то подскажите формулу блокирующую ячейку для ввода. |
16.11.2012, 19:55 | #2 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Формула не может заблокировать ячейку для ввода.
Нужны макросы. Пока не будет примера в виде прикреплённого файла Excel (в архиве) - помощи вы не дождётесь... Прикрепите свой файл, и на его примере покажите, что как долно работать и блокироваться |
18.11.2012, 12:44 | #3 |
Регистрация: 16.11.2012
Сообщений: 5
|
Пока я был на выходном, все переигралось, условие изменилось, и даже мой напарник почти допилил этот макрос, но все равно он не работает как надо, а именно почти идеально выполняется для колонки B, а в остальных почему то условие не перепроверяется. И вместо сообщения "превышено количество" он пишет "сохрани документ". Пробовал увеличивать диапазон, выдает ошибку в строке
If nR = 1 And nC = 1 And Target > 3 Then как его можно сделать для всего диапазона таблицы? она во вложении. Прим.: Люди ячейки закрашивают не заливкой, а копипастом, ctrl+с - ctrl+v. |
18.11.2012, 13:29 | #4 | |
Старожил
Регистрация: 15.05.2008
Сообщений: 2,058
|
Цитата:
К чему все это, для красоты? Насколько я знаю, обычно ставим 8-ку или 6-ку, в зависимости от рабочих часов смены и всех делов. И считать легко и автоматизировать...да что хочешь. Кстати, идея сходу) В зависимости от введеного значения, УФ закрашиваем ячейку нужным цветом.
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499 Последний раз редактировалось VictorM; 18.11.2012 в 13:31. |
|
18.11.2012, 13:38 | #5 |
Регистрация: 16.11.2012
Сообщений: 5
|
так я именно так и думал про УФ и цифры 1 и 2 - типа первая и вторая смены, но уже за меня придумали считать именно колцвет. Я полностью согласен - идиотизм.В принципе, можно переделать. Но вопрос не в этом - как запретить людям вводить больше трех значений в одну колонку?
|
18.11.2012, 13:49 | #6 | |
Старожил
Регистрация: 15.05.2008
Сообщений: 2,058
|
Цитата:
макросом проверяем количество заполненных ячеек Ну а дальше - дело техники кстати, только дочитался - так колонку или строку?
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499 Последний раз редактировалось VictorM; 18.11.2012 в 13:58. |
|
18.11.2012, 14:36 | #7 | |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
переделано все... на формулы
Виктор, Цитата:
из макросов остался один Код:
куда перечислить деньги - есть в подписи. будете расчитываться патронами - передадите при личной встрече.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
Последний раз редактировалось IgorGO; 18.11.2012 в 14:53. |
|
18.11.2012, 14:41 | #8 |
Регистрация: 16.11.2012
Сообщений: 5
|
именно колонки. всего 30 колонок - 30 дней. в день должен быть 1 утренний, 2 вечерних дежурных, когда файл открывается для записи менеджерам - они там ставят по 5 дней себе в удобные им дни, а в неудобные, вообще никто ничего не ставит. Вот и задача, чтоб в одну колонку нельзя было внести больше 3-х значений. То понятно, чтоб он считал и так далее, в моем примере все именно так, только вместо защиты колонки,(т.к. я не знаю как ее макросом сделать) выпадает сообщение превышено количество.и то, только в первой колонке
|
18.11.2012, 15:12 | #9 |
Регистрация: 16.11.2012
Сообщений: 5
|
IgorGO
Спасибище огромное! Все именно так, как надо, один минус - если копипастить, то предупреждений нет. Касательно денег - указали б сумму. От себя постараюсь закинуть с зарплаты хоть 20 грн. а вообще - буду требовать от руководства. |
18.11.2012, 22:15 | #10 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
опа, я только сейчас увидел адрес: Киев.
там еще в первой строке вместо первого числа можно написать новую дату, например, 1.12.2012 - шапка будет на декабрь.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Удаление Колонок | HospodySave | Microsoft Office Excel | 4 | 30.06.2010 18:24 |
Создание колонок | Golovastik | Microsoft Office Word | 1 | 01.06.2010 09:18 |
Проблемка с блокировкой TaskMgr | artemavd | Общие вопросы Delphi | 1 | 04.03.2010 12:28 |
условие в цикле | Николай Сергеевич | Общие вопросы C/C++ | 8 | 24.12.2009 14:25 |
Синхронизация колонок | eImage | Microsoft Office Excel | 4 | 13.03.2009 20:42 |