Рефераты. Решение экономических задач с помощью VBA p> 6) База данных i – переменная цикла используется в добавлении записей в БД при поиске пустого поля l1 – метка на которую ссылается оператор Goto
В программе происходит переход на метку в том случае если при заполнении данных пользователь забыл ввести фамилию по которой в программе определяется пуста запись или нет.

2.2 Входные и выходные данные

1) Задания на вычисление коммисионных, иполучения премий (1-е и 2-е задания)

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

WorkSheets(“”).Range(“”).Value

Выходными данными являются премиальные полученные в результате вычислений в соответствии с условием задания.

2)Составление ведомости расчета прибыли от товара.

Входными данными являются 9 различных видов цен на 5 комплектующих в соответствии с условием, а также значения цен на товар до комплектации.

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

3) Модель управления запасами

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

Выходными данными в задаче являются значения максимальной прибыли и оптимального обьема продаж, которые в прогремме выводятся при помощи диалогового окна.

4) Задача об оптимальных капиталовложениях

В этой задаче входными данными являются значения мат. ожиданией прибыли как ф-ций капиталовложений, в соств. с условием 6 филиалов и 7 млн. грв.

Выходными данными являются таблица где производится: оптимальное распределение средств, когда А млн. вкладываются в 1-й и 2-й филиалы вмесле, оптимальное распределение средств, когда А млн. вкладываются в 1- й,2-й и 3-й филиалы вмесле, оптимальное распределение средств, когда А млн. вкладываются в 1-й,2-й,3-й,4-й филиалы вмесле,и оптимальное распределение средств, когда А млн. вкладываются в 1-й,2-й,3-й,4-й и 5-й филиалы вмесле и
1-й,2-й,3-й,4-й,5-й и 6-й.

Из этой таблицы находится максимальная ожидаемая прибыль в данном случае равная 1,01 млн. и оптимальные капиталовложения, из таблицы видно, сколько млн. и в какие филиалы нужно вложить:

6 филиал – 2 млн.

5 филиал – 1 млн.

6 филиал – 1 млн.

6 филиал – 1 млн.

6 филиал – 1 млн.

6 филиал – 1 млн.

5) Задание на нахождение оптимального раскроя

Входными данными являются значения заказанных длин и их кол-ва, а также значение стандартной длины.

Выходными данными будут значения отходов при всех вариантах раскроя рассмотренных при решении задачи, и суммарное кол-во отходов которые по условию задачи необходимо минимизировать.


6) База данных

Сдесь входные данные являются выходными, т.е что пользователь ввел то и отобразится в таблице. База данных содержит слежующие поля:
2 поля ввода: Фамилия, имя
3 раскрывающихся списка: Работа,Стаж,Рабочий день (час)
2. Группы по 2 флажка: Кредитная карточка, загран. Паспорт
2 группы по 2 переключателя: Пол,Семейное положение
3. поля ввода со счетчиками: Возвраст,Оклад,отпуск

2.3 Подробное описание задач

2.3.1 Начисление премии в виде коммисионных и дополнительной оплаты.

Создаем таблицу начисления премий, в ячейки B4:D10 заносим значения доходов магазинов за указанные месяцы, сбоку в ячейках A4:A10 будут располагаться названия месяцев, согласно варианту – с ноября по май, а в
B3:D3 – магазины, таким образом на пересечении будет показана величина дохода магизина который находится в этом столбце и месяца который расположен в этой строке.

В ячейке B11 считаем доход 1-го магазина за все месяцы по формуле
=СУММ(B4:B10), и растягиваем маркер чертежа до ячейки D10, таким образом производится подсчет доходов всех магазинов за все месяцы.

Определяем какие же из доходов магазинов превышают 1490.00 грв. , для которых входят в это число премиальные будут составлять в соответствии с условием 2% от дохода за эти месяцы, остальные эл-ты в массиве специально заполняются нулями.

Do k = mas1(i)

If k > 1490 Then mas2(i) = mas1(i) Else mas2(i) = 0 i = i + 1
Loop Until i = 4

В этом цикле в массив заносятся только те значения которые превышают заданное по условию значение допустимости, в данном случае это 1490,00 руб.

Теперь доходы среди оставшихся магазинов нужно распределить по убыванию, для того, чтобы в соответствии с условием начислить магазинам дополнительные премиальные за 1-е, 2-е, 3-е место. Для этого выбираем следующий алгоритм: находим максимум среди этих доходов и назначаем этому магазину соответствующую 1-му месту премию, замем выбираем максимум из доходов не учитывая уже сужествующий (т.е. не учитывая первый максимум), и назначает этому магазину соотв. 2-му месту премию и т.д.


Do i = i + 1

If mas2(i) > Max Then

Max = mas2(i) indm = i

End If
Loop Until i = 3

Складываем полученные 2% с теми что начисляются дополнительно за 1,2,3 и т.д места, и заносим резельтаты в таблицу в строку “Премиальные”

Worksheets([лист]).Cells([координаты ячеек]).Value = Max * 0.02 + Max *
0.04

|Месяц |М а г а з |
| |и н ы |
| |1 |2 |3 |
|Ноябрь |100 |100 |120 |
|Декабрь |300 |150 |650 |
|Январь |1000|130 |250 |
|Февраль |1000|120 |50 |
|Март |0 |100 |760 |
|Апрель |100 |100 |0 |
|Май |310 |600 |500 |
|Всего |2810|1300 |2330 |
|Премиальные!|168,|0 |93,2 |
| |6 | | |


2.3.2 Начисление премии по определенным условиям

Создаем таблицу начисления премий, заполняем ее величинами доходов за указанные месяцы, и считаем сумму доходов за все месяцы. Подробное описание как создавать таблицу и заполнять ее значениями приволится в предыдущем пункте.

Определяем какие из полученных сумм доходов лежат в какой из 4-х указанных в условии областей и заносим рез-ты в таблицу в ячейки B12:D12 которые отображают премиальные

Do i = i + 1
If AA_1(i) < 700 Then Worksheets("Задание2").Cells(12, i + 1).Value =
Worksheets("Задание2").Cells(11, i + 1).Value * 0.01
If AA_1(i) >= 700 And AA_1(i) < 1400 Then Worksheets("Задание2").Cells(12, i + 1).Value = Worksheets("Задание2").Cells(11, i + 1).Value * 0.015
If AA_1(i) >= 1400 And AA_1(i) < 2800 Then
Worksheets("Задание2").Cells(12, i + 1).Value =
Worksheets("Задание2").Cells(11, i + 1).Value * 0.023
If AA_1(i) >= 2800 Then Worksheets("Задание2").Cells(12, i + 1).Value =
Worksheets("Задание2").Cells(11, i + 1).Value * 0.025
Loop Until i = 3

Полученная таблица выглядит следующим образом:

|Месяц |М а г а з |
| |и н ы |
| |1 |2 |3 |
|Ноябрь |50 |100 |120 |
|Декабрь |50 |150 |650 |
|Январь |100 |130 |250 |
|Февраль |100 |120 |50 |
|Март |120 |100 |760 |
|Апрель |100 |100 |1000 |
|Май |50 |600 |500 |
|Всего |570 |1300 |3330 |
|Премиальные!|5,7 |19,5 |83,25 |


2.3.3 Составление ведомости расчета прибыли от товара

Заполняем таблицу значениями, как указано в условии т.е 5 разновидностей комплектующих расположенных в ячейках B2:F2, и 9 вариантов стоимостей комплектующих в ячейках A3:A11. В ячейках B3:F12 будет располагаться значения стоимостей комплектующих и стоимости работы до комплектации.

В ячейках G3 по формуле =СУММ(B3:F3) считается общая стоимость всех комплектующих, растягиваем маркер ячейки G3 до ячейки G11, и получаем стоимость всех комплектующих для всех вариантов стоимостей.

В программе определяется какая деталь в каком месте самая дешовая, если не учитывать транспортные затраты и задаться целью купить детали по минимальным ценам. Для этого в программе определяются минимальные стоимости по 5-ти деталям.

Полученная ведомость будет выглядеть следующим образом:
|Варианты| В и д ы к о м п л е к т | 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 со специальными кнопками и полями ввода покупки журналов, продажи, и возврата к типографию. Окно ввода выглядит так:

[pic]

Составляем таблицу состоящую из обьема реализации, числа событий, и вероятности этих событий, первые два нам даны по условию а вероятность этих событий нужно посчитать. Вводим в ячейку 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(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 выводит эти оптимальные значения в окне сообщений.

Страницы: 1, 2, 3, 4



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.