Заказ закрыт
скрипт на vba для excel

Бюджет: по договоренности
Заказчик выбрал исполнителя:
Александр Макаров  
Есть сводный файл excel  и несколько файлов исходных с идентичной структурой и разными названиями. Нужен скрипт: 
1. При запуске скрипт спрашивает в какой папке лежат исходные файлы, после указания папки проверяет там наличие этих файлов(имена зашиты в скрипт, проверка идет по имени) и выводит сообщение про все исходные файлы построчно "имя файла  есть или нет". Если нет  строка выделена красным(или жирным или еще как-то, вообщем визуально отличается, если это возможно. Или тип уведомления другой, если не все файлы есть). И ниже кнопки "ок" и "отмена". При нажатии на "отмену" скрипт завершает работу. При нажатии на "ок" скрипт запрашивает расположение сводного файла за прошлый период(диалог выбора файла, как при открытии файла), имя нового файла и местоположение где сохранить(диалог выбора папки). После чего копирует исходный сводный файл в указанное местоположение с указанным именем(делает копию сводного файла туда, куда указал пользователь) и скрипт начинает работать с этим новым сводным файлом. 
2. Для каждого исходного файла есть место в сводном файле, куда данные из него вставить.(диапазоны динамические, могут увеличиваться и уменьшаться, ниже написано, так что нужно ориентироваться по каким-то флагам в ячейках).  

КАк это работает: берем построчно контрагентов из исходных файлов(которых несколько штук) и ищем этого контрагента в области, предназначенной для этого исходного файла, если контрагента не нашли, добавляем ячейки(не строку) в конец данной области и вставляем данные контрагента(наименование, начальный остаток, приход, расход, конечный остаток). Если контрагент найден по имени, то поле конечный остаток из сводного файла копируем в поле начальный остаток того же сводного файла, заполняем поля приход и расход, и на основе этих данный автоматом должен пересчитаться конечный остаток(там формула, начальный остаток + приход  расход). Если у контрагента все поля пустые в исходном файле  его не вставляем в сводный, если он в сводном уже есть, а в исходном поля пустые  то удаляем его из сводного(из той области сводного, которая связана с конкретно этим исходным файлом.)

Нужно предусмотреть масштабирование, чтобы скрипт модифицировался минимально при добавлении дополнительных исходных файлов(в идеале при добавлении дополнительного исходного файла – мы в скрипте прописываем имя файла и место в сводном(флаг), в которое должны писаться данные из исходного файла, остальное скрипт делает автоматом, т.к. данные и структура во всех исходных файлах однотипные)
Опубликован 19.11.2018 в 21:14 Последнее изменение: 20.11.2018 в 18:04
Заказ находится в архиве

Выберите способ верификации:

Обновите страницу после прохождения верификации.