Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - [решено] Помогите с задачей на VBA

Ответить
Настройки темы
VBA - [решено] Помогите с задачей на VBA

Аватара для harleysoft

Старожил


Сообщения: 304
Благодарности: 26


Конфигурация

Профиль | Отправить PM | Цитировать


Всем доброго времени суток!
Т.к. я не бум-бум в VBA поэтому решил сюда написать.
Нужно написать программу нахождения суммы большего и меньшего из трех чисел.
Собственно кто поможет решить проблему?

-------
Если я вам помог - нажимаете кнопочку "Полезное сообщение"...
Меня не было, нет и не будет. Вам всё кажется. :D


Отправлено: 20:44, 27-11-2010

 

Пользователь


Сообщения: 120
Благодарности: 22

Профиль | Цитировать


Код: Выделить весь код
Function ВернутьБольшееИлиМеньшееИзТрёхЧисел(ByVal ПервоеЧисло As Double, ByVal ВтороеЧисло As Double, ByVal ТретьеЧисло As Double, Optional ByVal ВернутьБольшее As Boolean = True) As Double 

Dim Result As Double 
Dim arr() As Double 
Dim i As Byte 

   ReDim arr(2) 
   arr(0) = ПервоеЧисло 
   arr(1) = ВтороеЧисло 
   arr(2) = ТретьеЧисло 
   Result = arr(0) 
   For i = 1 To UBound(arr) 
      If ВернутьБольшее Then 
         If arr(i) > arr(i - 1) Then 
            Result = arr(i) 
         End If 
      Else 
         If arr(i) < arr(i - 1) Then 
            Result = arr(i) 
         End If 
      End If 
   Next i 
   ВернутьБольшееИлиМеньшееИзТрёхЧисел = Result 
End Function 

Sub ТестНаписаннойФункции() 
Dim a As Double 
Dim b As Double 
Dim c As Double 
   'Инициализируем генератор произвольных чисел (только для теста вышеприведенной функции)
   Randomize 
   Debug.Print "Тест начат" 
   'Присвоим стартовые «рандомные» значения трём переменным
   a = Rnd() * 100 
   b = Rnd() * 100 
   c = Rnd() * 100 
   Debug.Print "Большее из чисел " & a & ", " & b & ", " & c 
   'Вызовем функцию «ВернутьБольшееИлиМеньшееИзТрёхЧисел» без 4 параметра (он опциональный, без него она возвращает БОЛЬШее значение из трёх указанных)
   Debug.Print ВернутьБольшееИлиМеньшееИзТрёхЧисел(a, b, c) 
   Debug.Print "Меньшее из чисел " & a & ", " & b & ", " & c 
   'Вызовем функцию «ВернутьБольшееИлиМеньшееИзТрёхЧисел» указав 4-ым параметром значение False, чтобы она вернула наименьшее значение из трёх указанных
   Debug.Print ВернутьБольшееИлиМеньшееИзТрёхЧисел(a, b, c, False) 
   Debug.Print "Тест завершен" 
End Sub
функция «ВернутьБольшееИлиМеньшееИзТрёхЧисел» и есть решение Вашей проблемы
первые 3 параметра числа целые или с плавающей точкой,
а четвертый параметр указывает искать большее (по-умолчанию) или меньшее (при указании четвертым параметром значения False) значение из первых трёх параметров
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:05, 30-11-2010 | #2



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

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для harleysoft

Старожил


Сообщения: 304
Благодарности: 26

Профиль | Отправить PM | Цитировать


KnRSU, Спасибо!

-------
Если я вам помог - нажимаете кнопочку "Полезное сообщение"...
Меня не было, нет и не будет. Вам всё кажется. :D


Отправлено: 14:48, 09-12-2010 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - [решено] Помогите с задачей на VBA

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
C/C++ - помогите с задачей по СИ!!! feliks2009 Программирование и базы данных 4 16-11-2009 00:18
Delphi - [решено] Помогите с задачей /Pascal/ Habetdin Программирование и базы данных 23 11-11-2009 22:46
C/C++ - [решено] Помогите с задачей! FeuerEngel Программирование и базы данных 3 28-05-2009 09:58
Delphi - [решено] Помогите с комбинаторной задачей! ALI Программирование и базы данных 16 01-01-2009 14:10
C/C++ - Помогите с задачей по Тройкам Пифагора quaker_strelok Программирование и базы данных 10 01-12-2008 16:44




 
Переход