Страницы: 1
RSS
Зависимая замена формул на их значение с блокировкой ячеек
 
Добрый день!
Помогите пожалуйста, мне необходимо:
1. Получать значение ячейки С в каждой строке, которая вычисляется с помощью формулы C=A-B(ячейки A и B заполняются вручную)
2. При первоначальном заполнении A и B, значение C, которое получилось по формуле-заблокировать, чтоб при дальнейшем изменении значений  A и B - С не изменялось.
Необходимо реализовать с помощью макроса.

Заранее спасибо!
 
Как то так )
Изменено: Андрей_26 - 24.07.2019 15:11:25
 
нет, это конечно было просто.....но мне необходимо блокировать её и чтоб повторно расчитывалось только после снятия защиты(ввода пароля)
Изменено: Ek1985 - 24.07.2019 15:23:35
 
ну так.  
Изменено: Андрей_26 - 24.07.2019 15:27:13
 
ячейки А и В не должны блокироваться.....только С
и на какое событие макрос?на изменение?
 
Попробуй. А и В не блокируется. Блокируется столбец С на листе от любых изменений. Пароль: Ek1985
Изменено: Андрей_26 - 24.07.2019 15:54:12
 
Супер! А при добавлении строк?
можно ли например, после заполнения ячейки B(впервые) автоматически вычислять значение С?
 
На предмет заполнения ячейки B можно, но вот как отследить впервые она заполнена или нет, не знаю. Не сталкивался.
 
А как сделать "На предмет заполнения ячейки B можно"?
 
Цитата
Ek1985 написал:
А как сделать "На предмет заполнения ячейки B можно"?
очень нужно :(  
 
Сделал, как понял, проверьте
Изменено: ZVI - 26.07.2019 07:30:57 (Исправление №2)
 
спасибо!, только вот при изменении A или B меняется С, а мне нужно чтоб как получилось первое значение так и осталось.
 
Реализован такой алгоритм: [C] блокируется как только и в [А], и в [В] записаны числа.
Резонно же, что без [А] не записывают [В], так как откуда взяться "Расходу", если его не из чего брать без "Вноса".
Cначала число вносится в [А], а затем, возможно, и в [В], а если в [В] не предполагается ничего вносить, тогда для блокировки нужно в [В] записать ноль.
Опишите логику своего алгоритма, если она отличается от описанного выше.
Если логика такая же, как у меня, то опишите последовательность действий, которая приводит к проблеме.

В сообщении #1, между прочим,  так и было записано про заполнение в "A и B", а не в "A или B"
2. При первоначальном заполнении A и B, значение C, которое получилось по формуле-заблокировать, чтоб при дальнейшем изменении значений  A и B - С не изменялось.
Изменено: ZVI - 25.07.2019 06:46:38
 
значит мне нужно А или В... :(  
Изменено: Ek1985 - 25.07.2019 08:49:40
 
Подправил код в сообщении #13, проверьте, может, там уже правильно ([А] и [В]).
И на всякий случай приложил к этому сообщению вариант с [А] или [В]
 
ZVI, спасибо большое за помощь....но в последнем в варианте получается, что ячейка С вообще не видит B(берет за ноль)
Мне конечно нужно, чтоб С=A-B и полученное значение заблокировалось и больше не зависело от А или B, если их редактировать.
 
Цитата
Ek1985 написала: ...нужно, чтоб С=A-B и полученное значение заблокировалось
Так сделано в обновленном приложении к сообщению #11, проверьте, если что-то не так, то "опишите последовательность действий, которая приводит к проблеме."
 
Да вы правы, только вот при заполнении новой строки появляется ошибка ...1004 :(
и при снятии блокировки нужно, чтоб расчитывало и не блокировало С=A-B
Изменено: Ek1985 - 26.07.2019 05:07:48
 
Цитата
Ek1985 написала: ошибка ...1004
Это моя ошибка в коде, исправил и приложил обновление в сообщении #11
После снятии блокировки все работает, как ожидалось (но требуется изменение в ячейке, например, удаление или ввод числа) до очередной первой блокировки.
Изменено: ZVI - 26.07.2019 07:36:35
 
ZVI - вы просто ГЕНИЙ!!!!!!!
Спасибо огромное приогромное!!!!!
теперь именно, то что я и хотела...
Изменено: Ek1985 - 26.07.2019 08:06:34
 
Ek1985, рад, что цель достигнута, всего Вам доброго!  :)
 
Цитата
Ek1985 написал:
ZVI  - вы просто ГЕНИЙ!
Off. А ведь некоторые жалуются, что ТСы не умеют точно формулировать. :)  
Изменено: sokol92 - 26.07.2019 13:52:23
Владимир
Страницы: 1
Наверх