Función VBA Max - ¿Cómo encontrar el máximo usando Max en Excel VBA?

Tabla de contenido

Max, como su nombre indica, se usa para encontrar el valor máximo de un conjunto de datos dado o una matriz, esta es una función de hoja de trabajo, por lo que se usa con el método de hoja de trabajo como función de hoja de trabajo, hay una limitación para este método como este La función toma una matriz como argumento, solo puede haber 30 valores en la matriz.

Función Excel VBA Max

Tenemos varias funciones numéricas en Excel. Podemos contar valores numéricos en el rango, podemos sumar y podemos encontrar el valor mínimo y el valor máximo del lote. Para encontrar el valor máximo del lote, tenemos una función de Excel llamada MAX, que devolverá el valor máximo del rango de números proporcionado. En VBA, no tenemos ninguna función incorporada llamada "MAX" para obtener el número máximo. Veremos cómo usar esta función Excel VBA Max.

Ejemplo de función máxima en Excel VBA

Desafortunadamente, no tenemos el lujo de usar MAX como la función incorporada de VBA, pero podemos acceder a esta función como parte de la clase de función de hoja de trabajo.

Ahora, mire el siguiente código.

Código:

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

En el ejemplo anterior, he declarado tres variables para almacenar el número.

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

He declarado una variable más para mostrar los resultados.

Atenuar el resultado como entero.

Para las tres primeras tres variables, he asignado valores como 50, 25 y 60, respectivamente.

a = 50  b = 25  c = 60

En la siguiente línea, he aplicado MAX como una clase de función de hoja de trabajo VBA para almacenar el resultado en la variable "Resultado".

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

Entonces, finalmente, estoy mostrando el valor en el cuadro de mensaje en VBA. Resultado de MsgBox

Ahora ejecutaré este código usando F5 o manualmente y veré cuál es el resultado en el cuadro de mensaje.

Entonces, el resultado es 60.

De todos los números proporcionados, es decir, 50, 25 y 60, el número máximo es 60.

Ejemplo avanzado de Max en Excel VBA

Los bucles son muy importantes en VBA para recorrer todas las celdas y llegar al resultado. Veremos cómo combinar VBA MAX con bucles para llegar al valor máximo de la lista de números.

Tengo una lista de artículos y su rendimiento de ventas mensual de esos artículos, como se muestra a continuación.

Ahora, para cada artículo, quiero saber cuál es el número máximo de venta en 4 meses, como se muestra en la imagen.

Al aplicar MAX para sobresalir, podemos encontrar esto en unos segundos.

Ahora veremos cómo encontrar el valor máximo usando código VBA.

El siguiente código realizará la tarea de encontrar el número máximo para cada artículo.

Código:

Sub MAX_Example2 () Dim k As Integer For k = 2 To 9 Cells (k, 7) .Value = WorksheetFunction.Max (Range ("A" & k & ":" & "E" & k)) Next k End Sub

Esto identificará el número máximo fácilmente.

Ahora ejecute el código manualmente o presione la tecla F5 y vea el resultado como se muestra a continuación.

Para obtener los valores máximos del nombre del mes, use el siguiente código.

Código:

Sub MAX_Example2 () Dim k Como entero para k = 2 a 9 celdas (k, 7) .Value = WorksheetFunction.Max (Range ("B" & k & ":" & "E" & k)) Celdas (k, 8) .Value = WorksheetFunction.Index (Range ("B1: E1"), WorksheetFunction.Match _ (Cells (k, 7) .Value, Range ("B" & k & ":" & "E" & k) )) Siguiente k Fin Sub

Según el valor proporcionado por la función VBA max, la función INDICE & MATCH devolverá el mes asociado en la siguiente línea.

Cosas para recordar

  • Si su número duplicado está allí, mostrará solo un número que viene primero.
  • Esta es la fórmula opuesta de la función MIN en Excel.
  • MAX no es una función de VBA. Es una función incorporada en Excel, por lo que se usa la clase de función de la hoja de trabajo.

Puede descargar esta plantilla de Excel aquí - Plantilla de función VBA Max.

Articulos interesantes...