Анимация
JavaScript
|
Главная Библионтека вычисляющая вероятность события. Эту формулу протаскиваем за маркер заполнения на диапазон F9: J9. Стоимость продукции вводится в ячейки D6 (Продажа), Е6 (Покупка) и F6 (Возврат) из диалоговых окон ввода (рис. 14.2) с помощью процедуры Сак, назначенной кнопке Start. Кроме того, процедура Start выводит найденные значения максимальной прибыли и оптимального объема закупки газет в диалоговое окно, представленное на рис. 14.2. Sub CalcO Dim г, V As Double Range ("Продажа") .Value = InputBox("Введите стоимость продажи") Range("Покупка").Value = Input Box("Введите стоимость покупки") Range ("Возврат").Value = InputBox("Введите стоимость возврата") г = Range("Максимальная прибыль").Value V = Range("Оптимальный объем").Value г = Format(r, "#.##") MsgBox "Максимальная прибыль: " & г & Chr(13) & "Оптимальный объем: " & V, vbinformation, "Расчет прибыли" End Sub В ячейках F12:J16 (см. рис. 14.1) с помощью функции пользователя Прибыль, которая будет описана ниже, вычисляются финансовые исходы при всевозможных вариантах событий покупки журналов и их реализации. Option Base 1 Function Прибыль (покуп As Variant) As Variant Dim NRows, i, j, Цпрод, Цпок Dim Цсдач As Integer, Res() As Integer NRows = покуп.Rows.Count Цпрод = Range("Продажа").Value Цпок = Range("Покупка").Value Цсдач = Range("Возврат").Value ReDim Res (Nrows, NRows) For i = 1 To NRows For j = I To NRows If i <= j Then Res(i, j) = покуп(i) * (Цпрод - Цпок) If i > j Then Res(i, j) = покуп(]) * (Цпрод - Цпок)-(покуп (i) (Цпок - Цсдач) Next j Next i Прибыль = Res End Function - покуп (j)) * введите стоимость покупки введите стоимость возврата ОК I Отмена j введите стоимость продажи Макси! Огтгим i:15 ь:26,35 Рис. 14.2. Диалоговые окна модели управления запасами В ячейках L13:L17 с помощью формулы {1=МУМН0Ж(Е12: Лб; ТРАНСП (F9 : J9) ) } находим ожидаемую прибыль, соответствующую различным вариантам покупки журналов. Напомним, что при выполнении операции над массивами для подтверждения ввода формулы необходимо нажать комбинацию клавиш Ctrl+Shift+Enter. 110 Программирование в среде Visual Basic for Applications В ячейке 117 (Максимальная прибыль) с помощью формулы =НАИБОЛЬШИЙ(L13:L17 ; 1) вычисляем максимальную прибыль. Ее также можно найти, воспользовавшись функцией МАКС, находящей максимальный элемент из списка =MAKC(L13:L17) В ячейке 118 по формуле =(ПОИСКПОЗ(НАИБОЛЬШИЙ(L13:L17;1);L13: L17;0)-1)*5 вычисляем соответствующий оптимальный объем покупок газет. Затем процедура Calc выводит эти оптимальные значения в окне сообщений. Функция НАИБОЛЬШИЙ (LARGE) возвращает k-Q наибольшее значение из множества данных. Эта функция используется, чтобы выбрать значение по его относительному местоположению. Например, функцию НАИБОЛЬШИЙ можно использовать, чтобы определить наилучший, второй или третий результат в баллах, показанный при тестировании. Приведем синтаксис использованной выше функции НАИБОЛЬШИЙ. Синтаксис: НАИБОЛЬШИЙ(массив; к), • массив - это массив или диапазон, для которых определяется к-е наибольшее значение; • к - это позиция (начиная с наибольшей) в массиве или в диапазоне. Функция Format осуществляет форматирование значения вычисляемого выражения по указанному формату. Синтаксис: Format (выражение, формат), • выражение - любое допустимое в VBA выражение; 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 [ 35 ] 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 |