Страницы: 1
RSS
Копирование данных, расположенных не по порядку
 
Добрый день, знатоки! Подсобите, пожалуйста, в очередной раз решить проблему.
В файле примере на лист "BAZA" по мере готовности вносятся номера контрактов, на листе "Журнал учета" макросом копируются необходимые данные по этим сотрудникам, т.е. по вновь созданным контрактам. Но у меня возникает загвоздка с работой макроса. Поясню: допустим, сегодня отработаны контракты №№15 и 18 и они в столбце расположены друг за другом, т.е. по возрастанию и в этом случае при нажатии кнопки макрос отрабатывает верно и копирует нужные данные на лист, НО если последующие контракты(номера контрактов), в примере это №№19-21, расположены не по принципу возрастания, т.е. не сверху вниз, то макрос копирует первый попавшийся бОльший номер (в данном случае больше 18) №21 и заканчивает работу, а номера 19 и 20 так и остаются нескопированными.
Как подправить макрос, чтобы он работал как нужно?

Если это имеет значение: фактическое кол-во столбцов на листе BAZA значительно больше, удалил для уменьшения веса файла.
Изменено: vikttur - 17.09.2021 14:15:27
 
Добрый. Может быть вы словами опишете, чего вы хотите получить в результате из исходных данных, а мы новый макрос напишем? :)
Чем перебирать, проще искать номера контрактов в имеющемся журнале - если не нашел - вписывать новую строку, иначе - ничего не делать.
Уникальный признак - номер контракта же, правильно?
Кому решение нужно - тот пример и рисует.
 
Пытливый, хм, даже смутили меня. :oops:  Не знаю как более точно описать проблему, чем она описана выше. Да, уникальный признак - номер контракта.
Спасибо, что откликнулись!
 
А вы не описывайте проблему, вы задачу опишите. Что должен делать макрос. Простыми словами. Например: Макрос должен с листа... сравнить данные с данными на листе... и если... то.... а потом так... а он ему... о она ему - ннна! и на лошадках потом тыг-дым, тыг-дым, тыг-дым. :)
Как-то так, в общем.

P.S. из столбцов на BAZA только эти данные должны попадать в журнал, как в примере?
Изменено: Пытливый - 17.09.2021 14:30:36
Кому решение нужно - тот пример и рисует.
 
Пытливый, Тыг-дым, тыг-дым, думаю не потребуется - вряд ли задачка настолько тяжела. :D
А нужно, чтобы макрос копировал на лист столбцы с листа BAZA по номеру контракта. Есть, например, уже копированные данные под номером "2021-18", после копирования этого номера, допустим на следующий день внесены записи под номерами 19-21, так вот нужно чтобы макрос скопировал нужные данные и для этих (в данном случае трех) номеров не зависимо от порядка расположения номеров в столбце.
 
Цитата
Пытливый: и если... то.... а потом так... а он ему... о она ему - ннна! и на лошадках потом тыг-дым, тыг-дым, тыг-дым
:D
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
На листе ЖурналУчета вставлена новая кнопка, на нее повешен новый макрос.
Текст макроса с комментариями - ниже (массивы, циклы, метод Find)
Скрытый текст
Чего непонятно - спрашивайте.

P.S. Только заметил, что на листе ЖурналУчета - "умная таблица". Можно было сделать немного по-другому в части определения области, куда вставлять отобранные данные, но на суть процесса - не влияет.
Изменено: Пытливый - 17.09.2021 16:42:57
Кому решение нужно - тот пример и рисует.
 
Пытливый, спасибо огроменное! Чуть подогнал под реальную таблицу и зарррработалаааа. :D
Если не секрет, какие изменения сделали вдогонку. Я что-то не заметил разницы в коде.
 
Я не делал изменений, я лишь написал, что в случае "вумной" таблицы можно определять последнюю заполненную ячейку по-другому, область для вставки определять по-другому, но это не важно, существующий вариант справляется.
Кому решение нужно - тот пример и рисует.
Страницы: 1
Наверх