VBA max

Max, come suggerisce il nome, viene utilizzato per scoprire il valore massimo da un determinato set di dati o un array, questa è una funzione del foglio di lavoro quindi viene utilizzata con il metodo del foglio di lavoro come funzione del foglio di lavoro, c'è una limitazione a questo metodo come questo funzione accetta un array come argomento, possono esserci solo 30 valori nell'array.

Funzione Excel VBA Max

Abbiamo diverse funzioni numeriche in Excel. Possiamo contare i valori numerici nell'intervallo, possiamo sommare e possiamo trovare il valore minimo e il valore massimo del lotto. Per trovare il valore massimo del lotto abbiamo una funzione excel chiamata MAX che restituirà il valore massimo dell'intervallo di numeri fornito. In VBA non abbiamo alcuna funzione incorporata chiamata "MAX" per ottenere il numero massimo. Vedremo come utilizzare questa funzione VBA Max di Excel.

Esempio di Max Function in Excel VBA

Sfortunatamente, non abbiamo il lusso di utilizzare MAX come funzione integrata di VBA, ma possiamo accedere a questa funzione come parte della classe della funzione del foglio di lavoro.

Ora guarda il codice sottostante.

Codice:

 Sub MAX_Example1 () Dim a As Integer Dim b As Integer Dim c As Integer Dim Risultato As Integer a = 50 b = 25 c = 60 Result = WorksheetFunction.Max (a, b, c) MsgBox Result End Sub 

Nell'esempio sopra, ho dichiarato tre variabili per memorizzare il numero.

Dim a As Integer Dim b As Integer Dim c As Integer

Ho dichiarato un'altra variabile per mostrare i risultati.

Dim Risultato come numero intero.

Per le prime 3 tre variabili, ho assegnato rispettivamente il valore 50, 25 e 60.

a = 50 b = 25 c = 60

Nella riga successiva, ho applicato MAX come classe di funzioni del foglio di lavoro VBA per memorizzare il risultato nella variabile "Risultato".

Risultato = WorksheetFunction.Max (a, b, c)

Quindi finalmente sto mostrando il valore nella finestra del messaggio in VBA. Risultato MsgBox

Ora eseguirò questo codice usando F5 o manualmente e vedrò qual è il risultato nella finestra del messaggio.

Quindi, il risultato è 60.

Da tutti i numeri forniti, cioè 50, 25 e 60, il numero massimo è 60.

Esempio avanzato di Max in Excel VBA

I loop sono molto importanti in VBA per eseguire tutte le celle e arrivare al risultato. Vedremo come combinare VBA MAX con i loop per ottenere il valore massimo dall'elenco dei numeri.

Ho un elenco di articoli e le relative prestazioni di vendita mensili di tali articoli, come mostrato di seguito.

Ora per ogni articolo, voglio sapere qual è il numero massimo di vendite in 4 mesi come mostrato nell'immagine.

Applicando MAX in Excel possiamo trovarlo in pochi secondi.

Ora vedremo come trovare il valore massimo utilizzando il codice VBA.

Il codice sottostante eseguirà il compito di trovare il numero massimo per ogni articolo.

Codice:

 Sub MAX_Example2 () Dim k As Integer Per k = da 2 a 9 celle (k, 7) .Value = WorksheetFunction.Max (Range ("A" & k & ":" & "E" & k)) Next k End Sub 

Questo identificherà facilmente il numero massimo.

Ora esegui il codice manualmente o premi F5 chiave e guarda il risultato come mostrato di seguito.

Per ottenere i valori massimi nome mese utilizzare il codice seguente.

Codice:

 Sub MAX_Example2 () Dim k As Integer Per k = da 2 a 9 celle (k, 7) .Value = WorksheetFunction.Max (Range ("B" & k & ":" & "E" & k)) Celle (k, 8) .Value = WorksheetFunction.Index (Range ("B1: E1"), WorksheetFunction.Match _ (Cells (k, 7) .Value, Range ("B" & k & ":" & "E" & k) )) Avanti k End Sub 

In base al valore fornito dalla funzione VBA max, la funzione INDICE e la funzione CONFRONTA restituiranno il mese associato nella riga successiva.

Cose da ricordare

  • Se è presente il numero duplicato, verrà visualizzato solo un numero che viene prima.
  • Questa è la formula opposta della funzione MIN in Excel.
  • MAX non è una funzione VBA, è una funzione incorporata in Excel, quindi utilizza la classe della funzione del foglio di lavoro.

Puoi scaricare questo modello Excel qui - Modello di funzione VBA Max