Poiščite drugo najvišjo vrednost v Excelu VBA - enostavni Excelovi makri

Kazalo

Spodaj si bomo ogledali program v Excel VBA to najde drugo najvišjo vrednost.

Situacija:

1. Najprej razglasimo dva predmeta Range in dve spremenljivki tipa Double. Objekte Range imenujemo rng in cell. Eno dvojno spremenljivko imenujemo najvišja vrednost in eno dvojno spremenljivko imenujemo secondHighestValue.

Dim rng As Range, celica As Range
Zatemni najvišjo vrednost kot dvojno, drugo najvišjo vrednost kot dvojno

2. Inicializiramo objekt Range rng z izbranim obsegom in dvema dvojnima spremenljivkama z vrednostjo 0.

Nastavi rng = Izbor
najvišja vrednost = 0
secondHighestValue = 0

3. Najprej želimo najti najvišjo vrednost. Vsako celico želimo preveriti v naključno izbranem obsegu (ta obseg je lahko poljubne velikosti). V Excelu VBA lahko za to uporabite zanko Za vsak naslednji. Dodajte naslednje kodne vrstice:

'Poiščite najvišjo vrednost
Za vsako celico V rng
Naslednja celica

Opomba: rng in celica sta tukaj naključno izbrana, lahko uporabite poljubno ime. Ne pozabite se sklicevati na ta imena v preostali kodi. Zelena črta je komentar in je dodana samo za podajanje informacij o tem kodu.

4. Preverimo vsako celico v tem razponu. Če je višja od najvišje vrednosti, vrednost zapišemo v spremenljivko najvišja vrednost. V zanko dodajte naslednjo kodno vrstico.

Če cell.Value> najvišjaVrednost Potem najvišjaVrednost = celica.Vrednost

Opomba: prva vrednost je vedno višja od najvišje vrednosti, ker je začetna vrednost najvišje vrednosti 0.

5. Drugič, želimo najti drugo najvišjo vrednost. Dodamo še eno zanko Za vsako naslednjo.

'Poiščite drugo najvišjo vrednost
Za vsako celico V rng
Naslednja celica

6. Ponovno preverimo vsako celico v izbranem območju. Če je višja od secondHighestValue in nižja od najvišjeVrednosti, zapišemo vrednost v spremenljivko secondHighestValue. V zanko dodajte naslednjo kodno vrstico.

Če cell.Value> secondHighestValue In cell.Value <najvišjaVrednost Potem secondHighestValue = celica.Value

7. Nazadnje prikažemo drugo najvišjo vrednost z uporabo polja MsgBox.

MsgBox "Druga najvišja vrednost je" & secondHighestValue

8. Makro postavite v ukazni gumb, izberite številke in kliknite na ukazni gumb.

Rezultat:

Vam bo pomagal razvoj spletnega mesta, ki si delijo stran s svojimi prijatelji

wave wave wave wave wave