Quad.Wiki

Настройка прайса с объединенными строками

Часто поставщики в случаях, когда несколько товаров одной серии, которые отличаются, например, только цветом, продают по одной цене, а в самом прайсе объединяют строки в нескольких колонках. Пример прайса:

image-20240325-060254.png

Если разъединить такие строки, то можно видеть, что цены заполнены только в одной строке

image-20240325-060337.png

Для загрузки такого прайса в программу нужно скопировать цены в каждую строку. Скопировать информацию из предыдущей строки, если она заполнена, можно с помощью встроенного макроса.

Откройте карточку прайса (двойной клик на названии прайса во вкладке редактирования настроек)

 

и перейдите во вкладку “Макросы”, в ней нажмите кнопку “Заполнить” - добавится текст макроса.

В макросе нужно указать следующие настройки

 

SHEET_INDEX - номер листа, на котором будет выполнен макрос. Если у вас несколько листов и на каждом нужно дозаполнить строки, то нужно сделать копию всех строк макроса для каждого листа, и в каждой копии указать настройки.

START_ROW - первая строка, с которой будет работать макрос на листе. Обычно это первая строка после заголовков таблицы прайса.

 

CHECK_COL_YES - здесь указывается номер колонки, по которой проверяется, нужно копировать в данную строку информацию из предыдущей или нет. Если в текущей строке в указанной колонке есть текст, то в эту строку не будет копирования, т.е. это значит, что в этой строке заполнены данные. В качестве этой колонки указывается обычно колонка с ценой. Т.е. если есть цена, то копировать не нужно. Если в колонке этой пусто, то будет скопирована информация из предыдущей строки в колонки, указанные в настройке COLMN_ARR. Если здесь указать 0, то такая проверка не осуществляется.

 

CHECK_COL_NO - здесь указывается номер колонки для проверки нужно копировать или нет, но, в отличие от предыдущей настройки, копирование не происходит если эта колонка не заполнена, т.е. в ней нет текста. Здесь можно указать какую-то колонку, чтобы отсеять при копировании строки, в которых указаны группы товаров, если они идут в отдельной строке. Пример:

Есть строка, в которой нет цены, но она не является товаром. В качестве CHECK_COL_NO можно указать 4-ую колонку, в которой заполнен штрихкод товара, так как он есть только в строках с товарами.

Если в вашем прайсе нет такой колонки, чтобы отсеять строки с группами, то в эти строки так же будут скопированы цены и они загрузятся как товары. При сопоставлении вам нужно игнорировать такие строки или же отключить их

 

COLMN_ARR - список колонок через запятую, в которых будет копироваться информация из предыдущих строк. Если нужно копировать только в одной колонке, например 5-ой, то указывается так: COLMN_ARR = Array(5)

 

После ввода настроек вы можете проверить, какой будет прайс после работы макроса, для этого нажмите кнопку “Тест” и выберите исходный файл прайса

Откроется файл Excel уже обработанный макросом. Полученный файл вы можете сохранить, чтобы открыть его для примера настройки и уже по нему настраивать.