Анализ расхождений в платежах со многими сценариями - VBA - PullRequest
0 голосов
/ 27 сентября 2019

Мне дали десятки тысяч счетов, выставленных клиентам.Я пытаюсь определить, являются ли счета потенциально точными.Единственные данные, которые у меня есть, - это сам счет.Здесь все становится сложнее.Существует четыре сценария, каждый со своими нюансами:

Сценарий 1 Нюансы:

  1. Базовый сбор в размере 10 долларов США * количество купленных предметов * количество доставок (максимальное количество предметов)куплено будет 10, а максимальное количество доставок будет 7)
  2. Если количество купленных товаров превышает 1, общий счет будет дисконтирован на 20%
  3. . Если ящики будут переработаны,общая сумма счета дополнительно снижается на 15%
  4. Если товар превышает 15 фунтов, за каждый предмет, превышающий 15 фунтов, будет начисляться дополнительная плата в размере 10 долларов США (максимальное количество элементов будет 10)
  5. Если нет подходящего порта для доставки, дополнительные 50 долларов в час будут взиматься за доставку (максимальное количество часов будет 3)

Сценарий 2 Нюансы:

  1. Бизнесс этого порта доставки для второй услуги будет взиматься 11 долларов США за единицу
  2. Если предприятие не разделяет порт доставки, плата составляет 13 долларов США за единицу.Каждая дополнительная доставка для компании, которая не имеет общего порта, составляет 15 долларов США за доставку, в дополнение к каждому товару, стоимость которого составляет 13 долларов США (максимальные поставки будут 7, а максимальное количество товаров будет 8).

Выпосмотри, куда я иду со всем этим.Следующие два сценария столь же продолжительны.К сожалению, никакой информации, кроме общего счета не дается.Мы не знаем, к какому сценарию относится счет, количество предметов и т. Д., Только один столбец счета.Как мне определить все потенциальные затраты по каждому сценарию, чтобы проиндексировать счет и посмотреть, есть ли совпадение?Любая помощь в этом была бы удивительна.

Я попытался создать индекс, в котором я выписал несколько сценариев.Например, столбец с количеством товаров, количеством поставок, скидкой на> 1 купленный товар, скидкой на переработку и т. Д. После двухчасовых попыток я понял, что это не лучший метод.Моя первая строка будет 1 предмет, 1 доставка, 0% скидка на> 1 купленный товар и 0% скидка на переработку.Далее будет 2 купленных товара, 1 доставка, 20% скидка на> 1 купленный товар, 0% скидка на переработку.Это, по-видимому, невозможно сделать для всего.

Мой ожидаемый результат - «Y», если сумма счета соответствует одной из потенциальных затрат из индекса, «N», если нет.

1 Ответ

0 голосов
/ 29 сентября 2019

Вы можете написать макрос для расчета каждого возможного сценария.Написать макрос с вложенными циклами .

  • Внешний цикл - это количество, например For ItemQty = 1 to 100 (или до некоторого другого вероятного максимума).
  • Внутренние циклы - это сценарии и нюансы, например For BoxesRecycled = 0 to 1.Каждый цикл изменяет сумму, например Total = Total - (BoxesRecycled * 0.15 * Total).
  • . Посередине всех циклов находится код, который записывает строку с количеством, нюансами и итогом.

Вам необходимо будет соответствовать последовательности, в которой применялись сборы и скидки, и способу округления итоговой суммы.Вероятно, последовательность была дисконтирована на 20%, затем дисконтирована на 15%, затем округлена.Но, возможно, это было дисконтировано 20%, затем округлено, затем дисконтировано 15%, а затем округлено.Если вы не соответствуете последовательности и округления, то ваша общая сумма может отличаться от фактического счета на 1 цент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...