VBA Max funkcija - Kaip rasti maksimalų „Max“ naudojimą „Excel VBA“?

Maks., Kaip rodo pavadinimas, naudojamas norint sužinoti didžiausią vertę iš tam tikro duomenų rinkinio ar masyvo, tai yra darbalapio funkcija, todėl ji naudojama kartu su darbalapio metodu kaip darbalapio funkcija, šis metodas yra ribotas, nes šis Funkcija naudoja masyvą kaip argumentą. Masyve gali būti tik 30 reikšmių.

„Excel VBA Max“ funkcija

„Excel“ programoje turime keletą skaitinių funkcijų. Mes galime suskaičiuoti skaitmenines reikšmes diapazone, galime susumuoti ir surasti mažiausią bei maksimalią partijos vertę. Norėdami rasti maksimalią partijos vertę, turime „Excel“ funkciją, vadinamą MAX, kuri grąžins maksimalią pateikto skaičių diapazono vertę. VBA neturime jokios integruotos funkcijos, vadinamos „MAX“, kad gautume maksimalų skaičių. Pamatysime, kaip naudoti šią „Excel VBA Max“ funkciją.

Maksimalios „Excel VBA“ funkcijos pavyzdys

Deja, mes neturime prabangos naudoti „MAX“ kaip integruotą VBA funkciją, tačiau šią funkciją galime pasiekti kaip „Worksheet Function“ klasės dalį.

Dabar pažvelkite į žemiau pateiktą kodą.

Kodas:

Sub MAX_Pavyzdys1 () Dim a kaip sveikasis matas b kaip sveikasis matas c kaip sveikasis skaičius Rezultatas kaip sveikasis skaičius = a = 50 b = 25 c = 60 rezultatas = WorksheetFunction. Maks. (A, b, c) MsgBox rezultatas Pabaiga Sub

Ankstesniame pavyzdyje aš paskelbiau tris kintamuosius, kad galėčiau išsaugoti skaičių.

Dim a kaip sveikasis  Dim b kaip sveikasis  Dim c kaip sveikasis skaičius

Deklaravau dar vieną kintamąjį, kad būtų rodomi rezultatai.

Blankus rezultatas kaip sveikasis skaičius.

Pirmiems trims trims kintamiesiems aš priskyriau vertę, atitinkamai, 50, 25 ir 60.

a = 50  b = 25  c = 60

Kitoje eilutėje pritaikiau MAX kaip VBA darbalapio funkcijų klasę, kad rezultatas būtų saugomas kintamajam „Rezultatas“.

Rezultatas = WorksheetFunction. Maks. (A, b, c)

Taigi pagaliau aš rodau vertę VBA pranešimų laukelyje. „MsgBox“ rezultatas

Dabar paleisiu šį kodą naudodamas F5 arba rankiniu būdu ir pamatysiu, koks rezultatas yra pranešimo laukelyje.

Taigi, rezultatas yra 60.

Iš visų pateiktų skaičių, ty 50, 25 ir 60, didžiausias skaičius yra 60.

Išplėstinis „Max“ pavyzdys „Excel VBA“

Kilpos yra labai svarbios VBA, kad eitų per visas ląsteles ir pasiektų rezultatą. Mes pamatysime, kaip sujungti VBA MAX su kilpomis, kad būtų pasiekta didžiausia vertė iš skaičių sąrašo.

Turiu daiktų sąrašą ir jų mėnesio pardavimo našumą, kaip parodyta žemiau.

Dabar norėčiau žinoti, koks yra didžiausias kiekvienos prekės pardavimo laikas per 4 mėnesius, kaip parodyta paveikslėlyje.

Pritaikę MAX „Excel“, tai galime rasti per kelias sekundes.

Dabar pamatysime, kaip rasti maksimalią vertę naudojant VBA kodą.

Žemiau pateiktas kodas atliks užduotį rasti maksimalų kiekvieno elemento skaičių.

Kodas:

MAX MAX_pavyzdys2 () Dim k kaip sveikoji k = 2–9 langelių (k, 7) sveikoji vertė. Vertė = WorksheetFunction.Max (diapazonas („A“ & k & „:“ & „E“ & k)) Kitas k End Sub

Tai lengvai nustatys maksimalų skaičių.

Dabar paleiskite kodą rankiniu būdu arba paspauskite klavišą F5 ir pamatykite rezultatą, kaip parodyta žemiau.

Norėdami gauti maksimalias reikšmes mėnesio pavadinimą, naudokite žemiau pateiktą kodą.

Kodas:

Sub MAX_Pavyzdys2 () Dim k kaip sveikoji k = 2–9 ląstelės (k, 7). Vertė = WorksheetFunction.Max (Diapazonas ("B" & k & ":" & "E" & k)) Ląstelės (k, 8) .Value = WorksheetFunction.Index (Range ("B1: E1"), WorksheetFunction.Match _ (Cells (k, 7). Value, Range ("B" & k & ":" & "E" & k)) )) Kitas k End Sub

Pagal funkciją „VBA max“ pateiktą vertę funkcija INDEX ir MATCH grąžins susietą mėnesį į kitą eilutę.

Ką reikia atsiminti

  • Jei yra jų pasikartojantis numeris, jis parodys tik vieną numerį, kuris ateis pirmiausia.
  • Tai yra priešinga MIN funkcijos „Excel“ formulė.
  • MAX nėra VBA funkcija. Tai yra integruota „Excel“ funkcija, todėl naudojant darbalapio funkcijų klasę.

Šį „Excel“ šabloną galite atsisiųsti čia - „VBA Max“ funkcijų šablonas.

Įdomios straipsniai...