Сформировать одномерный массив, состоящий из
положительных, отрицательных и нулевых элементов. Используя VBA. среди
отрицательных элементов массива найти максимальный элемент. Создать новый массив,
состоящий из индексов элементов исходного массива, значения которых равны
найденному максимальному значению.
Создать таблицу, содержащую результат выполнения
процедуры, и командную кнопку для запуска процедуры.
Answers & Comments
Sub Strange()
Dim r As Range, a As Variant, b As Variant, e As Variant, Max As Variant
Set r = Selection
a = r
Max = -1E+100
For Each e In a
If e < 0 And e > Max Then
Max = e
End If
Next
Dim i As Integer, j As Integer
b = a
j = LBound(b, 2) - 1
For i = LBound(a, 2) To UBound(a, 2)
If a(1, i) = Max Then
j = j + 1
b(1, j) = i
End If
Next
Set r = Range(Cells(2, 1), Cells(2, j))
Rows(2).Clear
r = b
End Sub