Trova il secondo valore più alto in Excel VBA - Macro semplici di Excel

Sommario

Di seguito vedremo un programma in Excel VBA Quello trova il secondo valore più alto.

Situazione:

1. Innanzitutto, dichiariamo due oggetti Range e due variabili di tipo Double. Chiamiamo gli oggetti Range rng e cell. Una doppia variabile chiamiamo valore più alto e una variabile doppia chiamiamo secondValore più alto.

Dim rng As Range, cella As Range
Dim valore più alto come doppio, secondo valore più alto come doppio

2. Inizializziamo l'oggetto Range rng con l'intervallo selezionato e le due variabili Double con valore 0.

Imposta rng = Selezione
valore più alto = 0
secondo valore più alto = 0

3. Innanzitutto, vogliamo trovare il valore più alto. Vogliamo controllare ogni cella in un intervallo selezionato casualmente (questo intervallo può essere di qualsiasi dimensione). In Excel VBA, puoi utilizzare il ciclo For Each Next per questo. Aggiungi le seguenti righe di codice:

"Trova il valore più alto"
Per ogni cella In rng
Cella successiva

Nota: rng e cella sono scelti a caso qui, puoi usare qualsiasi nome. Ricorda di fare riferimento a questi nomi nel resto del codice. La linea verde è un commento e viene aggiunta qui solo per fornire informazioni su questa parte di codice.

4. Controlliamo ogni cella in questo intervallo. Se è maggiore del valore più alto, scriviamo il valore nella variabile Valore più alto. Aggiungi la seguente riga di codice al ciclo.

Se cella.Valore > MassimoValore Allora MassimoValore = cella.Valore

Nota: il primo valore è sempre maggiore di upperValue perché il valore iniziale di upperValue è 0.

5. Secondo, vogliamo trovare il secondo valore più alto. Aggiungiamo un altro ciclo For Each Next.

"Trova il secondo valore più alto"
Per ogni cella In rng
Cella successiva

6. Controlliamo nuovamente ogni cella nell'intervallo selezionato. Se è maggiore di secondHighestValue e minore di upperValue, scriviamo il valore nella variabile secondHighestValue. Aggiungi la seguente riga di codice al ciclo.

If cell.Value > secondHighestValue And cell.Value <highestValue Then secondHighestValue = cell.Value

7. Infine, mostriamo il secondo valore più alto usando un MsgBox.

MsgBox "Il secondo valore più alto è " & secondHighestValue

8. Posizionare la macro in un pulsante di comando, selezionare i numeri e fare clic sul pulsante di comando.

Risultato:

Aiuterete lo sviluppo del sito, condividere la pagina con i tuoi amici

wave wave wave wave wave