Страницы: 1
RSS
Создание истории звонков, исходя из заполненных ячеек
 
Доброго времени суток! Искал много информации, как это реализовать, но нигде не нашёл ответ...
Есть БД для обзвона клиентов, есть 5 столбцов G1:P1 выделил жёлтым
Подскажите, какие варианты есть для создания истории звонков, чтобы при заполнении столбцов O и P данные строк в столбцах I:P копировались в предыдущее, т.е попадали в столбцы G:N, а I:P становились пустыми
Пробовал через "=ЕСЛИ(ЕПУСТО($O2);0;1)" в столбце Х и потом через макрос запустить, но получается только по одной строке, по всей таблице не выходит.
Подскажите как реализовать данную затею?
Изменено: vikttur - 23.09.2021 13:58:05
 
Добрый день.
Какие обязательные условия для переноса? Одновременно наличие данных в ячейках столбца О и Р по конкретной строке? или в каком-то одном?
Если в G уже есть данные - затирать?
Кому решение нужно - тот пример и рисует.
 
Цитата
Пытливый написал: Если в G уже есть данные - затирать?
G и H затирать

Цитата
Какие обязательные условия для переноса?
переносить, только когда места не осталось в других ячейках и задействованы О и Р столбцы

Цитата
Одновременно наличие данных в ячейках столбца О и Р по конкретной строке?
нет, их после заполнения перенести. Формирование истории, т.е. в неё написал, а после рабочего дня она скопировалась в предыдущие и очистилась. По факту O и P после обработки должны оставаться пустые для записи новых данных  
Изменено: vikttur - 22.09.2021 19:02:32
 
Так. Мой вопрос понят не совсем верно. Попробую пояснить.
Для выполнения неких действий (например, переноса данных из одних ячеек в другие) нужно выполнение неких условий. Условия выполняются, - перенос делаем, условия не выполняются - перенос НЕ делаем.
Далее я выспрашиваю условия:
1. Надо ли переносить данные, если заполнена хотя бы одна ячейка из столбца О и Р по строке? Или надо переносить, когда заполнены ДВЕ ячейки и в О, и в Р?
2. Надо ли переносить данные, если в столбцах О и Р данные есть, а в предшествующих (M, N, L, K, J, I, H) - данных нет, или такая ситуация невозможна?
Кому решение нужно - тот пример и рисует.
 
Цитата
Пытливый написал:
1. Надо ли переносить данные, если заполнена хотя бы одна ячейка из столбца О и Р по строке? Или надо переносить, когда заполнены ДВЕ ячейки и в О, и в Р?
в Ячейке О ставится дата звонка, в Р примечание, о чем был диалог. Т.е. эти 2 ячейки заполняются в одинаковый промежуток времени

Цитата
Пытливый написал:
2. Надо ли переносить данные, если в столбцах О и Р данные есть, а в предшествующих (M, N, L, K, J, I, H) - данных нет, или такая ситуация невозможна?
Данные в О и Р заносятся в самый последний момент, только в том случае если заполнены  G,H,I,J,K,L,M,N
Цитата
Пытливый написал:
Для выполнения неких действий (например, переноса данных из одних ячеек в другие) нужно выполнение неких условий. Условия выполняются, - перенос делаем, условия не выполняются - перенос НЕ делаем.
Если есть данные хотя бы в O или P, то условие выполняется.

Пример:
в ячейку О2 ставим дату или в Р2 пишем комментарий, условие выполняется, делаем перенос I2:P2 (I2,J2,K2,L2,M2,N2,O2,P2) на место G2:N2 (G2,H2,I2,J2,K2,L2,M2,N2) данные в ячейках O2 и P2 удаляются

Понятно, что я имел ввиду?))))
 
Отлично. Бывает ситуация, когда надо заполнить и О и P ячейку, а потом перенести?
Просто исходя из вашего описания - по ходу выполнения кода машина определит, что заполнена какая-то ячейка, например в О и тут же произведет копирование. А юзер такой: "Куда!!? я ж еще в Р не написал нужное!!"
Кому решение нужно - тот пример и рисует.
 
Цитата
Пытливый написал:
Бывает ситуация, когда надо заполнить и О и P ячейку, а потом перенести?
ну лучше всего будет когда заполнена ячейка P, т.к сначала ставиться дата в О, потом пишется комментарий.

Цитата
Пытливый написал:
Просто исходя из вашего описания - по ходу выполнения кода машина определит, что заполнена какая-то ячейка, например в О и тут же произведет копирование. А юзер такой: "Куда!!? я ж еще в Р не написал нужное!!"
Лучше тогда ориентироваться на Р ячейку, потому, что именно так и произойдёт))))
Можно же выполнить макрос (если это им делается) при закрытии книги
 
Вообще-то я подумывал о реакции на событие "изменение в ячейке", т.е. кодом отслеживаем изменения по ячейкам этих двух столбцов и как только  внесли изменения в них - то запуск процедуры копирования-вставки-очистки.
Я настырный, поэтому спрошу еще раз - вот может быть такая ситуация, когда надо скопировать ячейки без заполненного примечания в Р, или примечание пишется всегда?
Может быть такая ситуация, когда юзер сначала начал писать примечания,  потом заполняет ячейку в О датой?
Опять же - исходя из описания - если пользователь сначала заполнит примечание - триггер сработает и он опять будет орать: "Куда?!!! я ж дату еще не записал!!!"
Кому решение нужно - тот пример и рисует.
 
Цитата
Пытливый написал:
Я настырный, поэтому спрошу еще раз - вот может быть такая ситуация, когда надо скопировать ячейки без заполненного примечания в Р, или примечание пишется всегда
В Р данные вносятся после О, об этом можно предупредить юзера и куда ценней информация в столбце Р
 
Проверяйте.
Кому решение нужно - тот пример и рисует.
 
У Вас в коде, как я понял, реализовано это функцией "Вырезать" я правильно понимаю?
Дело в том, что к столбцу О применён выпадающий список с сегодняшней датой и при выполнении кода этот список исчезает. Можно ли что-то придумать?
Изменено: vikttur - 24.09.2021 18:02:09
 
Можно, в принципе, его программно устанавливать после вырезания.
Посмотрю, но в понедельник.
Хороших выходных.
Или еще вариант - повесить процедуру, которая будет бегать и переносить данные из О и Р по всем строкам таблицы, где найдет данные в Р, только запускать ее не по изменению ячейки, а по активации/деакцивации листа, например. Тогда там копирование/очистка не дадут циклического эффекта, как при изменении ячейки, там очистка данных вызывает процедуру из процедуры.
Кому решение нужно - тот пример и рисует.
 
Цитата
Пытливый написал:
Можно, в принципе, его программно устанавливать после вырезания.
Не подскажите, как это сделать?
 
Цитата
Андрей Иванов написал: Не подскажите
Просите не подсказывать и сами постараетесь решить? :)
 
Примерно так, как в файле. Код на листе CombineSheet
Кому решение нужно - тот пример и рисует.
 
Цитата
vikttur написал:
Просите не подсказывать и сами постараетесь решить?
Я бы не просил, если бы у самого это получилось)
Цитата
Пытливый написал:
Примерно так, как в файле. Код на листе CombineSheet
Все супер. Спасибо большое. Вот только когда общий доступ дашь, это не работает. Решил, что пусть будет ctrl+shift+4)))))
 
Цитата
Андрей Иванов написал: Я бы не просил
Да я Вам о неправильном применении слова )
"не подскажите" и "не подскажете" - смысл разный
Страницы: 1
Наверх