Etsi toiseksi suurin arvo Excel VBA - Easy Excel -makroissa

Sisällysluettelo

Alla tarkastelemme ohjelmaa Excel VBA että löytää toiseksi korkeimman arvon.

Tilanne:

1. Ensin julistamme kaksi alueobjektia ja kaksi muuttujaa tyyppiä Double. Kutsumme alueen kohteita rng ja solu. Yksi kaksinkertainen muuttuja, jota kutsumme korkeimmaksi arvoksi, ja yksi kaksinkertainen muuttuja, jota kutsumme toiseksi korkeimmaksi arvoksi.

Dim rng as Range, solu As Range
Himmennä korkein arvo kaksinkertaisena, toinen korkein arvo kaksinkertaisena

2. Alustamme Range -objektin rng valitulla alueella ja kahdella kaksoismuuttujalla, joiden arvo on 0.

Aseta rng = Valinta
korkein arvo = 0
secondHighestValue = 0

3. Ensinnäkin haluamme löytää korkeimman arvon. Haluamme tarkistaa jokaisen solun satunnaisesti valitulta alueelta (tämä alue voi olla minkä kokoinen tahansa). Excel VBA: ssa voit käyttää For For Next Next -silmukkaa tähän. Lisää seuraavat koodirivit:

'Etsi korkein arvo
Jokaista solua kohti
Seuraava solu

Huomautus: rng ja solu valitaan satunnaisesti täällä, voit käyttää mitä tahansa nimiä. Muista viitata näihin nimiin koodin loppuosassa. Vihreä viiva on kommentti, ja se lisätään tähän vain antamaan tietoja tästä koodista.

4. Tarkistamme jokaisen solun tällä alueella. Jos se on korkeampi kuin korkein arvo, kirjoitamme arvon muuttujalle korkein arvo. Lisää silmukkaan seuraava koodirivi.

Jos solu.arvo> korkein arvo Sitten korkein arvo = solun arvo

Huomautus: ensimmäinen arvo on aina korkeampi kuin korkein arvo, koska korkeimman arvon alkuarvo on 0.

5. Toiseksi haluamme löytää toiseksi korkeimman arvon. Lisäämme jokaisen seuraavan silmukan.

'Etsi toiseksi suurin arvo
Jokaista solua kohti
Seuraava solu

6. Tarkistamme jokaisen valitun alueen solun uudelleen. Jos se on korkeampi kuin secondHighestValue ja pienempi kuin SupremeValue, kirjoitamme arvon muuttujaan secondHighestValue. Lisää silmukkaan seuraava koodirivi.

Jos solu.Arvo> secondHighestValue And cell.Value <korkein arvo Sitten secondHighestValue = solun arvo.

7. Lopuksi näytämme toiseksi korkeimman arvon käyttämällä MsgBoxia.

MsgBox "Toiseksi suurin arvo on" & secondHighestValue

8. Aseta makro komentopainikkeeseen, valitse numerot ja napsauta komentopainiketta.

Tulos:

Tulet auttaa kehittämään sivuston jakaminen sivu ystävillesi

wave wave wave wave wave