Итеративное вычисление постоянно подвешивает файл.
А макросом это возможно оформить?
А макросом это возможно оформить?
05.01.2018 16:22:49
Откуда мне было знать-то, что три модуля надо вставлять.? Пока виснет. Удалю с оригинального файла все модули - вставлю Ваши.. Проверю работоспособность, потом буду по одному подключать нужные. Это надолго.. Пока спасибо всем за помощь. Конечно это опять меня возвращает к мысли в посте №13. |
|||
|
05.01.2018 15:06:42
не ставится - говорит, что нет знака =.
Вот нашёл вроде - в файле примере прописана процедура при открытии книги
на SetAA Sub or Function not defined
Изменено: |
|||
|
05.01.2018 14:35:25
Ігор Гончаренко - в вашем файле примера работает всё , как надо.
Вставляю код в оригинальный файл( там вместо колонок А,В и С колонки C,D и E соответственно) с заменой 1 на 3 в строке Set a = Intersect(Target, Columns(1)) (я так понимаю для отслеживания колонки С, вместо А) Остальное должно остаться неизменным? Выдаёт ошибку на
Тут либо, я что-то не доделываю, либо может существующие в книге коды по процедуре
Ну И вот это для меня непостижимо - Then SetAA . Почему без пробела? АА - это диапазаон или переменная?
Изменено: |
|||||
|
29.12.2017 00:41:31
Всё по моему точно описано в первом сообщении темы. извините процитирую:
"Как сделать, чтобы дата не вставлялась(не обновлялась), если в ячейку столбца С вставляется ( "копировать-вставить") такое же значение, которое там и было?" Кроме Вас этот вопрос крутило несколько человек, но ничего не получается, поэтому и много постов в теме. Поэтому я и "ругаю" Excel, который не предлагает функции Неменяемой Даты вместо Сегодня(). Извините, наверное, я действительно не могу точно и понятно поставить задачу. Мне казалось, что в посте №1 и потом другой вариант в посте №10 вполне понятны. В посте ниже на Вашу просьбу: "1.Если в колонке А изменилось одно или несколько значений : " К сожалению да, слово "изменилось" по разному трактуется в русском языке и в Excel. И я теперь долго буду ругать себя за то, что не знал этого ![]() В любом случае спасибо! И мои извинения за потраченное Вами время.
Изменено: |
|
|
29.12.2017 00:17:52
Изменено: |
|||
|
28.12.2017 23:55:13
Ігор Гончаренко,Тестирую, спасибо.
1. Некорректно код реагирует на вставку или ввод такого же значения в ячейку столбца А , какое там и было. Было 4 - вставили 4 - дата поменялась, а это неправильно для поставленной задачи.
Изменено: |
|
|
28.12.2017 23:34:18
При всём уважении к вашему профессионализму, Я остаюсь при мнении, что сложность задачи кажется(да может мне только кажется) небольшой, просто нет встроенного инструмента для реализации. Требуется всего лишь в формулу =ЕСЛИ(A=B;СЕГОДНЯ();" ") в качестве аргумента включить вместо СЕГОДНЯ() неменяемую дату - ну ту которую можно вставить обычными CTRL + ;
Изменено: |
|||
|
28.12.2017 23:12:39
- реакция EXEL: Вставка текущей даты в соответстующую ячейку ( в том же ряду) колонки С, которая (Дата) меняется только при следующем изменении в соответствующей( из того же ряда) ячейке из колонки А, а не при изменении системного времени на компьютере. 2 Возможен вариант отслеживания не изменений в колонке А, а проверка равенства с соответствующим значением ячейки в колонке В(формула зависящая от А) То есть, ЕСЛИ(A=B): - реакция EXEL: Вставка текущей даты в соответствующую ячейку ( в том же ряду) колонки С, которая (Дата) меняется только при потере равенства A=B? а не при изменении системного времени на компьютере.
Изменено: |
|||
|
28.12.2017 21:49:36
![]() ![]() Заранее благодарю. P.S. Интернет засыпан такими вопросами - решения нет. Вот люди предлагают создать функцию
Не поможет? Проверяю.
Изменено: |
|||||
|
28.12.2017 21:02:14
1.Файл примера выложил - инструкция внутри. 2. Нужно учесть, что столбец А периодически вручную( в будущем возможно макросом) заполняется копированием значений столбца B и что на листе отслеживается обработка изменений кодом
Изменено: |
|||||
|
28.12.2017 20:38:47
А если пойти другим путём?
есть три столбца А - значение В - формула с просчитываемыми постоянно значениями, зависящими от А С- требуется внести дату, когда B будет( было) равно А - и не менять её пока А=B, а при неравенстве A и В - очищать С Что-то такое:
Извините, что морочу голову.
Изменено: |
|||
|
28.12.2017 20:00:09
alex1210, не понял, вопроса, извините.
Нет, не бывает |
|||
|
27.12.2017 19:56:14
Итак есть варианта.
1. Любезно предложенный Михаилом Лебедевым
Который , как нужно - не меняет дату при вставке того же самого значения, но не работает корректно при вставке нескольких ячеек одновременно(например целого столбца). И код основанный на подсказках замечательных профессионалов с этого форума в соединении с Sub Worksheet_Changе по вставке "фамилии" в список.
Ломаю, ломаю голову, как "объединить коды", чтобы и меняло дату при вставке одновременно нескольких ячеек, и игнорировало бы вставку нового значения, равного предыдущему. Голову сломал, хочеться добиться результата - но не по силам мне(((. Может кто даст заключение, что это невозможнщ, чтобы я плюнул бы уже на эту затею....или обнадёжил?
Изменено: |
|||||
|
26.12.2017 23:24:21
Кто -нибудь поможет? Как макрос, предложенный Михаилом, переделать, чтобы работало при вставке нескольких ячеек одновременно?
Или сделать вставку даты на пересчёт соседней ячейки с формулой? Тогда исчезнет необходимость проверять по вставке
Изменено: |
|
|
25.12.2017 19:14:43
Михаил Лебедев,Спасибо! попробую! Извините, сейчас некогда.
|
|
|