Перед вами анализатор цен, написанный в Excel на языке VBA.
Было:
Есть Excel-файлы прайс-листов поставщиков. Прайс-листы содержат колонку артикулов и колонку цен. Для поиска минимальной цены менеджер открывал файлы, находил в каждом нужную позицию, потом их сравнивал по цене. Если таких файлов десятки и позиций в них сотни (тысячи), то можно представить трудоёмкость этой работы.
Стало:
Для заказчика создан Excel-файл с двумя листами.
1. На первый лист соответствующим макросом копируются артикулы и цены из прайс-листов по выбору пользователя. Данные прайс-листов попадают в соответствующие колонки первого листа в зависимости от номера в имени файла. Номер можно оперативно изменить перед началом копирования.
2. После подготовки первого листа на втором листе макросом выполняется анализ цен. В первую колонку копируются без дублирования артикулы всех прайс-листов и сортируются по возрастанию. Далее в колонки согласно номеру файла записываются цены. После этого в каждой строке цветом выделяются минимальная и максимальная цена. В последних колонках выводится разница между min и max ценами в стоимостном и процентном выражении.
На 1-м снимке (см. вложенный файл .docx) представлен пример прайс-листа. Номер в имени файла определит его положение в сводной таблице. Из прайс-листов копируются артикулы и цены. Данные начинаются со второй строки, артикулы и цены располагаются в 1-й и 3-й колонках соответственно.
На 2-м снимке представлена сводная таблица прайс-листов. Каждый прайс-лист занимает своё место согласно его номеру. Можно загрузить до двухсот прайс-листов. Можно загрузить все листы «одним махом», либо загружать по мере необходимости любое количество прайс-листов. Перенос данных выполняется макросом.
На 3-м снимке (он перед вами) представлена сводная таблица цен. Подготовка таблицы выполняется макросом. В первую колонку копируются без дублирования все артикулы и сортируются по возрастанию. Далее в колонки по номеру файла заносятся цены поставщиков. После этого в каждой строке цветом отмечаются min и max цена.