Hitta näst högsta värde i Excel VBA - enkla Excel -makron

Innehållsförteckning

Nedan kommer vi att titta på ett program i Excel VBA det där hittar det näst högsta värdet.

Situation:

1. Först deklarerar vi två Range -objekt och två variabler av typen Double. Vi kallar Range -objekt rng och cell. En dubbel variabel kallar vi högsta värde, och en dubbel variabel som vi kallar secondHighestValue.

Dim rng As Range, cell As Range
Dim högsta värde som dubbel, näst högsta värde som dubbel

2. Vi initierar Range -objektet rng med det valda intervallet och de två Double -variablerna med värde 0.

Ställ in rng = Selection
högsta värde = 0
secondHighestValue = 0

3. Först vill vi hitta det högsta värdet. Vi vill kontrollera varje cell i ett slumpmässigt valt område (detta område kan vara av valfri storlek). I Excel VBA kan du använda slingan För varje nästa för detta. Lägg till följande kodrader:

'Hitta högsta värde
För varje cell I rng
Nästa cell

Notera: rng och cell väljs slumpmässigt här, du kan använda alla namn. Kom ihåg att hänvisa till dessa namn i resten av din kod. Den gröna linjen är en kommentar och läggs bara till här för att ge information om denna kod.

4. Vi kontrollerar varje cell i detta område. Om det är högre än högsta värde skriver vi värdet till variabeln högsta värde. Lägg till följande kodrad i slingan.

Om cell.Value> högsta värde Då högsta värde = cell.Värde

Obs! Det första värdet är alltid högre än det högsta värdet eftersom startvärdet för det högsta värdet är 0.

5. För det andra vill vi hitta det näst högsta värdet. Vi lägger till ytterligare en för varje nästa slinga.

'Hitta näst högsta värde
För varje cell I rng
Nästa cell

6. Vi kontrollerar varje cell i det valda intervallet igen. Om det är högre än secondHighestValue och lägre än hoogsteValue, skriver vi värdet till variabeln secondHighestValue. Lägg till följande kodrad i slingan.

Om cell.Value> secondHighestValue Och cell.Value <högsta värde Sedan secondHighestValue = cell.Value

7. Slutligen visar vi det näst högsta värdet med en MsgBox.

MsgBox "näst högsta värde är" och secondHighestValue

8. Placera ditt makro i en kommandoknapp, välj siffrorna och klicka på kommandoknappen.

Resultat:

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave