Инспирировано статьей ВПР (VLOOKUP) с интервальным просмотром
Цена на товар не является статической и со временем меняется. Необходимо найти возможность получить цену товара, которая была актуальной на момент его продажи.
Предлагается решение задачи (реализовано в Excel 2010)
Создаем две таблицы: Прайс и Журнал. В прайсе указываем цены на два товара Товар1 и Товар2, которые изменяются с течением времени.
В таблице Журнал ведем журнал продаж.
формулу для цены в таблице Журнал для удобства я разбил на две части. Первая часть вычисляет ближайшую меньшую дату из таблицы Прайс для выбранного товара:
Эту часть формулы записываем в Диспетчер имен (раздел Формулы).
Далее в таблицу Журнал в столбец Цена вводит следующую формулу:
Это формула массива, поэтому вводим ее при помощи Ctrl+Shift+Enter
В результате, находим цену для каждого товара, которая действовала на момент его продажи.
Решение реализовано таким образом, что не зависит от сортировки таблицы Прайс.
Цена на товар не является статической и со временем меняется. Необходимо найти возможность получить цену товара, которая была актуальной на момент его продажи.
Предлагается решение задачи (реализовано в Excel 2010)
Создаем две таблицы: Прайс и Журнал. В прайсе указываем цены на два товара Товар1 и Товар2, которые изменяются с течением времени.
В таблице Журнал ведем журнал продаж.
формулу для цены в таблице Журнал для удобства я разбил на две части. Первая часть вычисляет ближайшую меньшую дату из таблицы Прайс для выбранного товара:
Код |
---|
БлижМенДата=НАИБОЛЬШИЙ(Прайс[Дата]*(Прайс[Дата]<=Журнал[@Дата])*(Прайс[Товар]=Журнал[@Товар]);1) |
Далее в таблицу Журнал в столбец Цена вводит следующую формулу:
Код |
---|
{=ВПР(БлижМенДата&[@Товар];ВЫБОР({1;2};Прайс[Дата]&Прайс[Товар];Прайс[Цена]);2;0)} |
В результате, находим цену для каждого товара, которая действовала на момент его продажи.
Решение реализовано таким образом, что не зависит от сортировки таблицы Прайс.
Изменено: Cepro - 23.11.2014 20:48:26