Новости:

Форум на данный момент в стадии обновления. Если у Вас возникли проблемы со входом в свою учетную запись - просьба писать на email: info@excel-vba.ru

Главное меню

Перенос строк в существующую таблицу в определенной последовательности

Автор СерьгаБ, 27.05.2024, 17:56:26

« назад - далее »

СерьгаБ

Доброго дня! Прошу помочь в написании макроса...
Суть задачи: ежедневно в течение года ведется сквозная таблица в диапазоне столбцов А:F по выполнению работ подразделением, например:

В1123=27.05.24
В1124=Иванов; Е1124=Адрес1;  F1124=1; G1124=раскоп вывоз; V1124=асфальт.
В1125=Иванов; Е1125=Адрес2; F1125=2; G1125=раскоп отвал; V1125=газон.
В1126=Иванов; Е1126=Адрес3; F1126=1; G1126=изоляция; перекрытие; засыпка; V1126=газон.
В1127=Иванов; Е1127=Адрес4; F1127=2; G1127=прочее/; V1127=перекрытие плит.
В1128=Петров; Е1128=Адрес5; F1128=2; G1128=раскоп отвал; V1128=газон.
В1129=Петров; Е1129=Адрес6; F1129=1; G1129=раскоп вывоз; V1129=асфальт.
В1130=Петров; Е1130=Адрес7; F1130=1; G1130=изоляция; перекрытие; засыпка; V1130=газон.
В1131=Сидоров; Е1131=Адрес8; F1131=1; G1131=сварка; V1131=катушка 3м.
В1132=Сидоров; Е1132=Адрес9; F1132=2; G1132=сварка; V1132=замена задвижки.

При формировании работ на следующий день данная информация копируется в новые сутки в этой же таблице с новой датой, удаляются строки выполненных работ (факт выполнения проставляется в столбце F в конце смены: 1 - выполнено, 2 - перенос работы на завтра) и добавляются новые задания согласно поступившей заявке. Свежие данные располагаются на этом же листе под таблицей через 3 пустых строки в таком же формате. Отличие только в новых адресах, например:

В1141=Иванов; Е1141=Адрес10;  F1141=вновь; G1141=раскоп вывоз; V1141=газон.
В1142=Иванов; Е1142=Адрес11; F1142=вновь; G1142=изоляция; перекрытие; засыпка; V1142=асфальт.
В1143=Петров; Е1143=Адрес12; F1143=вновь; G1143=раскоп вывоз; V1143=газон.
В1144=Петров; Е1144=Адрес13; F1144=вновь; G1144=изоляция; перекрытие; засыпка; V1144=асфальт.
В1142=Сидоров; Е1142=Адрес14; F1142=вновь; G1142=сварка; V1142=катушка 1м.

Требуется вырезать новые заявки под таблицей и вставить их в таблицу в работы следующего дня в определенной последовательности: по столбцу В сформировать данные по фамилиям, а по столбцу G распределить еще и по видам работ строго в определенной последовательности: 1) раскоп (вывоз или отвал не имеет значения), 2) изоляция, перекрытие, засыпка, 3) прочее/. Новые данные в таком раскладе должны вставать после работ, перенесенных с прошлых суток. Сварка распределяется только пофамильно и с условием, что новая заявка добавляется после заявки с переносом. Должен получиться следующий результат:

В1133=28.05.24
В1134=Иванов; Е1134=Адрес2; F1134=перенос; G1134=раскоп отвал; V1134=газон.
В1135=Иванов; Е1135=Адрес10;  F1135=вновь; G1135=раскоп вывоз; V1135=газон.
В1136=Иванов; Е1136=Адрес11; F1136=вновь; G1136=изоляция; перекрытие; засыпка; V1136=асфальт.
В1137=Иванов; Е1137=Адрес4; F1137=перенос; G1137=прочее/; V1137=перекрытие плит.
В1138=Петров; Е1138=Адрес5; F1138=перенос; G1138=раскоп отвал; V1138=газон.
В1139=Петров; Е1139=Адрес12; F1139=вновь; G1139=раскоп вывоз; V1139=газон.
В1140=Петров; Е1140=Адрес13; F1140=вновь; G1140=изоляция; перекрытие; засыпка; V1140=асфальт.
В1141=Сидоров; Е1141=Адрес9; F1141=перенос; G1141=сварка; V1141=замена задвижки.
В1142=Сидоров; Е1142=Адрес14; F1142=вновь; G1142=сварка; V1142=катушка 1м.

Dmitry_Cheplya

Тут без примера в Excel сложно. На листы все изложенное выше перенесите - так и задачу понять будет легче. А так это полноценная программа, а не просто подсказать строчку кода

Дмитрий Щербаков(The_Prist)

Согласен, не очень похоже на помощь - пока выглядит как "напишите мне с нуля программу". Что уже сделали, что конкретно не получается?
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...

Dmitry_Cheplya

Уже лучше, но выглядит как текстовая запись шахматной партии. Более наглядно было бы, оформив файл Excel, приложить его к переписке.
Надо писать на VBA макрос для решения задачи, где прописывать алгоритмы, правила и прочее. А вообще стилистика вопроса по-прежнему звучит как "напишите мне с нуля код".

Яндекс.Метрика Рейтинг@Mail.ru