Логика требует некоторого переосмысления.В данный момент вы используете метод грубой силы, который, как вы уже обнаружили, становится сложнее, чем больше исходный набор.И ваше решение на самом деле не подлежит ремонту - что если вы хотите 4 числа, 10 чисел и т. Д., Вам придется постоянно переписывать код.
Современные языки кодирования включают циклы и наборы, чтобы упростить нашу жизнь.
Function MyMax(Numbers() As Long) As String
Dim largest As Long = Long.MinValue
If Numbers.Count > 0 Then ' it is ok to find the maximum from a single number!
For iterator = 0 To Numbers.Count - 1
If Numbers(iterator) > largest Then largest = Numbers(iterator)
'largest = If(Numbers(iterator) > largest, Numbers(iterator), largest) ' another way of achieving the line above
Next
Return largest.ToString
Else
Return "Error - no numbers to check!"
End If
End Function
Sub testMyMax()
Debug.Print(MyMax({2, 7, 14}))
End Sub