В массиве из 8 целых чисел переставить наибольший элемент на 1-ое

В массиве из 8 целых чисел переставить наибольший элемент на 1-ое место, а элементы с первого до максимального двинуть на одну позицию на право.
Написать программку для VBA MS Excel.
Данные могут генерироваться случайным образом,основное,чтоб это было 8 целых чисел.
Вывод осуществляется в строке (label),либо как сделаете

Задать свой вопрос
1 ответ
Во вложении файл с рабочей книжкой MS Excel 2003

Sub abcd()
    Dim n As Integer, a(1 To 8) As Integer
    Dim r As Range
    n = 8
    imax = 1
    Set r = Range(Cells(1, 1), Cells(2, 8))
    r.ClearContents 'Чистка области
    r.Interior.Color = RGB(255, 255, 255) 'Чистка цвета заливки
    For i = 1 To n
        a(i) = Int(30 * Rnd)
        If a(i) gt; a(imax) Then imax = i
        Cells(1, i) = a(i)
    Next
    t = a(imax)
    Cells(1, imax).Interior.Color = RGB(204, 255, 255)
    Range(Cells(1, 1), Cells(1, imax - 1)).Interior.Color = RGB(255, 255, 153)
    For i = imax - 1 To 1 Step -1
        a(i + 1) = a(i)
    Next
    a(1) = t
    For i = 1 To n
        Cells(2, i) = a(i)
    Next
    Cells(2, 1).Interior.Color = RGB(204, 255, 255)
    Range(Cells(2, 2), Cells(2, imax)).Interior.Color = RGB(255, 255, 153)
End Sub

Арсений Скобицкий
Спасибо большое.Но я не умею походу объяснять людям,что мне в итоге надобно.Надобно было на форме это всё саздать.
Леха
Создать,без таблицы
Попенченко Галка
но это теснее все мои препядствия
, оставишь ответ?
Имя:*
E-Mail:


Добро пожаловать!

Для того чтобы стать полноценным пользователем нашего портала, вам необходимо пройти регистрацию.
Зарегистрироваться
Создайте собственную учетную запить!

Пройти регистрацию
Авторизоваться
Уже зарегистрированны? А ну-ка живо авторизуйтесь!

Войти на сайт