...
В случае, когда поставщик вам дает скидки на товар, при этом часть скидок идет от оптовой цены, а часть скидок от розничной цены (РРЦ), такие скидки применяются при помощи макроса. При этом в макросе задаются только скидки от розничной цены, а от оптовой вводятся как обычные скидки во вкладке Настройка прайса. Для работы макроса необходимо, чтобы в прайсе был Бренд в отдельной колонке, скидки применяются по названию бренда.
Expand |
---|
title | Макрос в свернутом виде |
---|
|
Code Block |
---|
| Set BrandDisc = New Collection
'Скидки от розничной цены
'бренд укзаывать большими буквами!!
'дробную часть скидки через точку
BrandDisc.Add Key:="ABAT", Item:=26.24
BrandDisc.Add Key:="ATESY", Item:=29.5
BrandDisc.Add Key:="МХМ", Item:=30
BrandDisc.Add Key:="CARBOMA", Item:=30
BrandDisc.Add Key:="ПОЛЮС", Item:=30
BrandDisc.Add Key:="POLAIR", Item:=31
BrandDisc.Add Key:="RADA", Item:=30
BrandDisc.Add Key:="HICOLD", Item:=25
BrandDisc.Add Key:="ГОЛЬФСТРИМ", Item:=31
BrandDisc.Add Key:="VIATTO", Item:=14.08
BrandDisc.Add Key:="СНЕЖ", Item:=20.74
BrandDisc.Add Key:="DERBY", Item:=16.5
BrandDisc.Add Key:="GELLAR", Item:=26.5
BrandDisc.Add Key:="FROSTOR", Item:=26.5
'колонка опт (диллерская цена)
COL_PRICE_DILER = 20
'колонка РРЦ (розничная цена)
COL_PRICE_ROZN = 21
'колонка в которой указан Бренд
COL_BRAND = 13
'лист на котором применять макрос
SHEET_IDX = 1
'строка с которой начинаются товары
ROW_START = 6
Set sht = Sheets(SHEET_IDX)
row_count = sht.UsedRange.Rows.Count
On Error Resume Next
For i = ROW_START To row_count
brnd = UCase(Trim(sht.Cells(i, COL_BRAND).Value))
If brnd <> "" Then
brnd_disc = 0
brnd_disc = BrandDisc.Item(brnd)
If brnd_disc > 0 Then
sht.Cells(i, COL_PRICE_DILER).Value = sht.Cells(i, COL_PRICE_ROZN).Value - _
sht.Cells(i, COL_PRICE_ROZN).Value * brnd_disc / 100
End If
End If
Next i
|
|
Данный макрос вставляется в настройку прайса, как написано здесь Настройка прайса: макросы
В макросе вам нужно изменить (указать в соответствии с вашим прайсом) следующие значения:
COL_PRICE_DILER
- номер колонки с оптовой ценой
COL_PRICE_ROZN
- номер колонки с розничной ценой (РРЦ)
COL_BRAND
- колонка с названием бренда
ROW_START
- номер строки с которой начинаются товары в прайсе
Дальше нужно указать скидки с помощью следующих строк:
Code Block |
---|
|
BrandDisc.Add Key:="ABAT", Item:=26.24
BrandDisc.Add Key:="ATESY", Item:=29.5 |
Key:="ABAT"
- вводится название бренда большими буквами
Item:=26.24
- вводится скидка, десятичные значения через точку
Таких строк можно добавить любое нужное вам количество.