Funkce VBA Max | Jak najít maximum pomocí Max v aplikaci Excel VBA?

Max, jak název napovídá, se používá k zjištění maximální hodnoty z dané datové sady nebo pole, jedná se o funkci listu, takže se používá u metody listu jako funkce listu, u této metody existuje omezení, protože toto funkce vezme pole jako argument, v poli může být pouze 30 hodnot.

Funkce Excel VBA Max

V Excelu máme několik numerických funkcí. Můžeme spočítat číselné hodnoty v rozsahu, můžeme sčítat a můžeme najít minimální hodnotu i maximální hodnotu šarže. Chcete-li zjistit maximální hodnotu šarže, máme funkci Excel nazvanou MAX, která vrátí maximální hodnotu zadaného rozsahu čísel. Ve VBA nemáme žádnou vestavěnou funkci nazvanou „MAX“, abychom získali maximální počet. Uvidíme, jak používat tuto funkci Excel VBA Max.

Příklad maximální funkce v aplikaci Excel VBA

Bohužel nemáme luxus používat MAX jako vestavěnou funkci VBA, ale k této funkci máme přístup jako součást třídy Worksheet Function.

Nyní se podívejte na níže uvedený kód.

Kód:

 Sub MAX_Example1 () Dim a As Integer Dim b As Integer Dim c As Integer Dim Result As Integer a = 50 b = 25 c = 60 Result = WorksheetFunction.Max (a, b, c) MsgBox Result End Sub 

Ve výše uvedeném příkladu jsem deklaroval tři proměnné pro uložení čísla.

Dim a As Integer Dim b As Integer Dim c As Integer

Pro zobrazení výsledků jsem deklaroval ještě jednu proměnnou.

Výsledek ztlumit jako celé číslo.

Pro první 3 tři proměnné jsem přiřadil hodnotu 50, 25 a 60.

a = 50 b = 25 c = 60

V dalším řádku jsem použil MAX jako třídu funkcí listu VBA pro uložení výsledku do proměnné „Result“.

Výsledek = WorksheetFunction.Max (a, b, c)

Nakonec tedy zobrazuji hodnotu ve schránce zpráv ve VBA. Výsledek MsgBox

Nyní spustím tento kód pomocí F5 nebo ručně a uvidím, jaký je výsledek v okně se zprávou.

Výsledek je tedy 60.

Ze všech dodaných čísel, tj. 50, 25 a 60, je maximální počet 60.

Pokročilý příklad Max v aplikaci Excel VBA

Smyčky jsou ve VBA velmi důležité, aby procházely všemi buňkami a dosáhly výsledku. Uvidíme, jak kombinovat VBA MAX se smyčkami, abychom došli k maximální hodnotě ze seznamu čísel.

Mám seznam položek a jejich měsíční prodejní výkon těchto položek, jak je uvedeno níže.

Nyní pro každou položku chci vědět, jaké je maximální prodejní číslo za 4 měsíce, jak je znázorněno na obrázku.

Použitím MAX v aplikaci Excel to zjistíme za pár sekund.

Nyní uvidíme, jak najít maximální hodnotu pomocí kódu VBA.

Níže uvedený kód provede úkol najít maximální počet pro každou položku.

Kód:

 Sub MAX_Example2 () Dim k As Integer Pro k = 2 až 9 buněk (k, 7). Hodnota = WorksheetFunction.Max (Range ("A" & k & ":" & "E" & k)) Další k End Sub 

Tím snadno zjistíte maximální počet.

Nyní spusťte kód ručně nebo stiskněte klávesu F5 a podívejte se na výsledek, jak je uvedeno níže.

Chcete-li získat maximální hodnoty názvu měsíce, použijte níže uvedený kód.

Kód:

 Sub MAX_Example2 () Dim k As Integer Pro k = 2 až 9 buněk (k, 7). Hodnota = WorksheetFunction.Max (Range ("B" & k & ":" & "E" & k)) Buňky (k, 8) .Value = WorksheetFunction.Index (Range ("B1: E1"), WorksheetFunction.Match _ (Cells (k, 7) .Value, Range ("B" & k & ":" & "E" & k) )) Další k Konec Sub 

Na základě hodnoty poskytované funkcí VBA max funkce INDEX a funkce MATCH vrátí související měsíc v dalším řádku.

Věci k zapamatování

  • Pokud tam je jejich duplicitní číslo, zobrazí se pouze jedno číslo, které bude na prvním místě.
  • Toto je opačný vzorec funkce MIN v aplikaci Excel.
  • MAX není funkce VBA, je to vestavěná funkce v aplikaci Excel, takže se používá třída funkcí listu.

Tuto šablonu aplikace Excel si můžete stáhnout zde - Šablona funkcí VBA Max