Решение экономических задач с помощью VBAРефераты >> Программирование и компьютеры >> Решение экономических задач с помощью VBA
Полученная ведомость будет выглядеть следующим образом:
Варианты |
В и д ы к о м п л е к т у ю щ и х |
MIN / MAX | |||||
Стоимости |
1-я деталь |
2-я деталь |
3-я деталь |
4-я деталь |
5-я деталь |
Всего | |
1-й |
20 |
90 |
5 |
50 |
60 |
225 | |
2-й |
19 |
85 |
4 |
55 |
50 |
213 | |
3-й |
20 |
81 |
4 |
50 |
56 |
211 |
Миним. Цена на товар |
4-й |
25 |
87 |
8 |
57 |
58 |
235 | |
5-й |
29 |
87 |
5 |
55 |
60 |
236 | |
6-й |
18 |
88 |
4 |
40 |
61 |
211 | |
7-й |
30 |
99 |
9 |
66 |
60 |
264 | |
8-й |
30 |
99 |
9 |
66 |
64 |
268 |
Макс. Цена на товар |
9-й |
21 |
90 |
6 |
54 |
55 |
226 | |
До комплектации |
15 |
75 |
3 |
40 |
50 |
183 |
2.3.4 Модель управления запасами
Вводим исходные значения , т.е. значения покупки продавцом журналов, продажи этих журналов и возврата в типографию в случае не реализации товара. Ввод всего этого производится в диалоговом окне, которое создается как UserForm со специальными кнопками и полями ввода покупки журналов, продажи, и возврата к типографию. Окно ввода выглядит так:
Составляем таблицу состоящую из обьема реализации, числа событий, и вероятности этих событий, первые два нам даны по условию а вероятность этих событий нужно посчитать. Вводим в ячейку D7 следующую формулу вычисления вероятностей {=D6/СУММ($D$5:$I$5)}
и растягиваем маркер до ячейки I7.
В ячейках C10:H15 спомощью ф-ции пользователя CALC Вычисляем финансовые исходы при всевозможных вариантых событий покупки журналов и их реализации
Function CALC(buy As Variant) As Variant
Dim Цена_продажы, Цена_покупки, Цена_возврата, NRows, i, j As Integer, Result() As Integer
NRows = buy.Rows.Count
Цена_продажы = Range("a2").Value
Цена_покупки = Range("b2").Value
Цена_возврата = Range("c2").Value
ReDim Result(NRows, NRows)
For i = 1 To NRows
For j = 1 To NRows
If i <= j Then Result(i, j) = buy(i) * (Цена_продажы - Цена_покупки)
If i > j Then Result(i, j) = buy(j) * (Цена_продажы - Цена_покупки) - (buy(i) - buy(j)) * (Цена_покупки - Цена_возврата)
Next j
Next i
CALC = Result
End Function
В ячейках J11:J16 с помощью формулы {=МУМНОЖ(C10:H15;ТРАНСП(D7:I7))} находим ожидаемую прибыль, соответсввующую различным вариантам покупки журналов.
В ячейке F16 спомощью формулы =НАИБОЛЬШИЙ(J11:J16;1)
вычисляем максимальную прибыль . Ее также можно найти воспользовавшись ф-цией МАКС, находящей максимальный эл-т из списка
=Макс(J11:J16)
В ячейке F17 по формуле =(ПОИСКПОЗ(НАИБОЛЬШИЙ(J11:J16;1);J11:J16;0)-1)*5
соответствующий оптимальный обьем покупок газет. Затем функция CALC выводит эти оптимальные значения в окне сообщений.
Ф-ция наибольший возвращает К-е наибольшее значение из множества данных . Эта ф-ция используется для того чтобы выбрать значение по его относительному местоположению. Например, фунуцию НАИБОЛЬШИЙ можно использовать для того чтобы определить наилучший, второй, третий результат в балах, показанный при тестировании. Систаксис программы такой:
НАИБОЛЬШИЙ(массив;К) где Массив – это массив или диапазон ячеек где определяется наибольшее значение, к – позиция (начиная с наибольшей) в массиве или диапазоне.
Все результаты занесенные в таблицу будут выглядеть следующим образом:
П р о д а ж а | |||||||||
П |
0 |
4 |
8 |
12 |
14 |
18 | |||
о |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
Покупка |
Прибыль |
к |
4 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
- р. |
у |
8 |
0 |
-20 |
16 |
16 |
16 |
16 |
4 |
- р. |
п |
12 |
0 |
-40 |
-4 |
32 |
32 |
32 |
8 |
12,94р. |
к |
14 |
0 |
-60 |
-24 |
12 |
48 |
48 |
12 |
16,88р. |
а |
18 |
0 |
-70 |
-34 |
2 |
38 |
56 |
14 |
9,00р. |
Максимальная прибыль |
16,88р. |
18 |
0,28р. | ||||||
Оптимальный обьем |
15 |