Задача в том, чтобы автоматизировать обновление цен в нашей таблице с товарами (.csv) по определённым правилам, при том что эти цены надо забирать из 7 разных других таблиц (прайсов поставщиков).
Итак, сайт на битриксе выгружает csv-файл с позициями товара. Есть как поле уникального идентификатора для каждого товара, присвоенное битриксом в системе, так и поле с артикулом для этого товара из прайса поставщика. В чём беда: артикулы разных поставщиков при загрузке в битрикс ведут себя по-разному. Точнее, проблема только с артикулами только двух поставщиков, одни начинаются на '0000 или '000 и т.д., эти ноли вместе с тильдой отбрасываются, и при выгрузке csv в следующий раз артикулы будут уже без этих аппендиксов. У другого поставщика три ноля после артикула, они тоже в выгрузке отсутствуют, т.к. битрикс их убирает. Это немного усложняет процесс обновления цен функцией ВПР. Да и вообще, надоело каждый раз выполнять такой алгоритм:
1) сортировать csv-выгрузку по поставщику (есть такое поле в выгрузке), затем артикулы каждого поставщика в получившейся последовательности выносить в отдельную книгу,
2) туда же выносить сокращённый прайс поставщика (от каждого из них требуются только поля соответствий "артикул-цена"),
3) как-то называть область этого сокращённого прайса,
4) убедиться, что артикулы из csv-выгрузки точно приведены к тому же виду, что и артикулы из прайса поставщика,
5) применять ВПР к полям рядом со скопированными артикулами из csv-выгрузки,
6) Скопировать столбец формул и вставить как числа в соседний столбец и далее работать с ним,
7) Для цен двух поставщиков нужно сделать небольшое преобразование: у первого просто поделить цену на 0,9, у второго в зависимости от того, больше ли вытащенная цена 10000 или меньше, либо поделить цену на 0,85 (если меньше), либо на 0,9 (если больше)
8) в столбце с получившимися вытащенными и преобразованными ценами затем надо, во-первых, заменить запятые на точки (для битрикса, у него цены в таком формате, через точку, а не запятую), во-вторых также инструментом экселя "найти и заменить" убрать #Н/Д, получившееся рядом с частью позиций, заменив #Н/Д на пустое значение,
9) Наконец, скопировать получившийся столбец, где цены, имевшиеся в новом прайсе поставщика, записаны в правильном виде и последовательности для моего списка товаров из выгрузки, а на месте цен для товаров, которых уже нет в новом прайсе поставщика, пустые ячейки, и этот скопированный столбец вставить обратно в csv-выгрузку в столбец цен определённым образом (галочка на "пропуск пустых значений", чтобы цены для тех товаров, которых больше нет у поставщика, не заменялись пустыми ячейками, а оставались нетронутыми),
10) Наконец, неплохо бы сделать проверку, насколько изменились цены, чтобы убедиться, что всё адекватно. Но это надо делать на более раннем этапе, когда запятые ещё не заменены на точки.
Весь этот процесс нужно автоматизировать. Поставщиков 7, и выбиваются из ряда те 2 прайса, мешая делать быстрый ВПР, где поставщик в артикуле добавляет одинарную кавычку с нолями перед числом своего артикула и тот поставщик, который добавляет три пробела после артикула. Они тоже отбрасываются системой битрикс при выгрузке товаров в csv-фаил.
Пожалуйста, если автоматизировать весь процесс нельзя, сообщите, что хотя бы можно.