Najděte druhou nejvyšší hodnotu v aplikaci Excel VBA - snadná makra aplikace Excel

Obsah

Níže se podíváme na program v Excel VBA že najde druhou nejvyšší hodnotu.

Situace:

1. Nejprve deklarujeme dva objekty Range a dvě proměnné typu Double. Objekty Range nazýváme rng a buňka. Jedna dvojitá proměnná, kterou nazýváme nejvyšší hodnotou, a jedna dvojitá proměnná, kterou nazýváme secondHighestValue.

Dim rng As Range, cell As Range
Dim nejvyšší hodnota jako dvojitá, druhá nejvyšší hodnota jako dvojitá

2. Inicializujeme objekt Range rng s vybraným rozsahem a dvěma Double proměnnými s hodnotou 0.

Nastavit rng = výběr
nejvyšší hodnota = 0
secondHighestValue = 0

3. Nejprve chceme najít nejvyšší hodnotu. Chceme zkontrolovat každou buňku v náhodně vybraném rozsahu (tento rozsah může mít libovolnou velikost). V aplikaci Excel VBA k tomu můžete použít smyčku For Every Next. Přidejte následující řádky kódu:

„Najděte nejvyšší hodnotu
Pro každou buňku v rng
Další buňka

Poznámka: zde jsou náhodně vybrány rng a buňka, můžete použít libovolná jména. Ve zbytku kódu se na tyto názvy podívejte. Zelená čára je komentář a je přidána pouze sem, aby poskytla informace o tomto kusu kódu.

4. Zkontrolujeme každou buňku v tomto rozsahu. Pokud je vyšší než nejvyšší hodnota, zapíšeme hodnotu do proměnné nejvyšší hodnota. Přidejte následující řádek kódu do smyčky.

Pokud cell.Value> nejvyšší hodnota, pak nejvyšší hodnota = buňka.Hodnota

Poznámka: první hodnota je vždy vyšší než nejvyšší hodnota, protože počáteční hodnota nejvyšší hodnoty je 0.

5. Za druhé, chceme najít druhou nejvyšší hodnotu. Přidáme další smyčku For Every Next.

„Najděte druhou nejvyšší hodnotu
Pro každou buňku v rng
Další buňka

6. Znovu zkontrolujeme každou buňku ve vybraném rozsahu. Pokud je vyšší než secondHighestValue a nižší než nejvyšší hodnota, zapíšeme hodnotu do proměnné secondHighestValue. Přidejte následující řádek kódu do smyčky.

If cell.Value> secondHighestValue And cell.Value <higherValue Then secondHighestValue = cell.Value

7. Nakonec zobrazíme druhou nejvyšší hodnotu pomocí MsgBox.

MsgBox „Druhá nejvyšší hodnota je“ & secondHighestValue

8. Umístěte makro do příkazového tlačítka, vyberte čísla a klikněte na příkazové tlačítko.

Výsledek:

Vám pomůže rozvoji místa, sdílet stránku s přáteli

wave wave wave wave wave