Найдите второе по величине значение в Excel VBA - макросы Easy Excel

Содержание

Ниже мы рассмотрим программу на Excel VBA тот находит второе по величине значение.

Ситуация:

1. Сначала мы объявляем два объекта Range и две переменные типа Double. Мы называем объекты Range rng и cell. Одну переменную типа double мы называем высшим значением, а одну переменную типа double мы называем secondHighestValue.

Dim rng As Range, cell as Range
Уменьшить наивысшее значение как двойное, второе высшее значение как двойное

2. Мы инициализируем rng объекта Range выбранным диапазоном и двумя переменными Double со значением 0.

Установить rng = Выбор
высшее значение = 0
secondHighestValue = 0

3. Во-первых, мы хотим найти максимальное значение. Мы хотим проверить каждую ячейку в случайно выбранном диапазоне (этот диапазон может быть любого размера). В Excel VBA для этого можно использовать цикл For Each Next. Добавьте следующие строки кода:

'Найди наивысшую ценность
Для каждой ячейки In rng
Следующая ячейка

Примечание: здесь случайным образом выбираются rng и ячейка, вы можете использовать любые имена. Не забудьте ссылаться на эти имена в остальной части кода. Зеленая линия является комментарием и добавляется сюда только для предоставления информации об этом фрагменте кода.

4. Проверяем каждую ячейку в этом диапазоне. Если оно выше highValue, мы записываем значение в переменную highValue. Добавьте в цикл следующую строку кода.

Если ячейка.Значение> максимальное значение, тогда максимальное значение = ячейка.Значение.

Примечание: первое значение всегда выше, чем наивысшее значение, потому что начальное значение наивысшего значения равно 0.

5. Во-вторых, мы хотим найти второе по величине значение. Мы добавляем еще один цикл For Each Next.

'Найти второе по величине значение
Для каждой ячейки In rng
Следующая ячейка

6. Еще раз проверяем каждую ячейку в выбранном диапазоне. Если оно больше, чем secondHighestValue, но ниже, чем maximumValue, мы записываем значение в переменную secondHighestValue. Добавьте в цикл следующую строку кода.

Если cell.Value> secondHighestValue и cell.Value <upperValue, то secondHighestValue = cell.Value

7. Наконец, мы отображаем второе по величине значение с помощью MsgBox.

MsgBox «Второе по величине значение:» & secondHighestValue

8. Поместите свой макрос в командную кнопку, выберите числа и щелкните командную кнопку.

Результат:

Вы поможете развитию сайта, поделившись страницей с друзьями

wave wave wave wave wave