VBA Max功能|如何在Excel VBA中使用最大值查找最大值?
顾名思义,最大值用于从给定的数据集或数组中找出最大值,这是一个工作表函数,因此它与工作表方法一起用作工作表函数,因此该方法存在局限性函数以数组作为参数,数组中只能有30个值。
Excel VBA Max功能
我们在excel中有几个数值函数。我们可以计算范围内的数值,可以求和,也可以找到手数的最小值和最大值。为了找到批次的最大值,我们有一个称为MAX的excel函数,它将返回所提供数字范围的最大值。在VBA中,我们没有任何称为“ MAX”的内置函数来获取最大数量。我们将看到如何使用此Excel VBA Max函数。
Excel VBA中最大功能的示例
不幸的是,我们不能将MAX用作VBA内置函数,但可以将其作为Worksheet Function类的一部分进行访问。
现在,看下面的代码。
代码:
Sub MAX_Example1()Dim a作为整数Dim b作为Integer Dim c作为Integer Dim结果作为Integer a = 50 b = 25 c = 60结果= WorksheetFunction.Max(a,b,c)MsgBox结果End Sub
在上面的示例中,我声明了三个变量来存储数字。
昏暗为整数Dim b作为整数Dim c作为整数
我已经声明了另一个变量来显示结果。
结果为整数。
对于前三个变量,我分别指定了50、25和60这样的值。
a = 50b = 25c = 60
在下一行中,我将MAX用作VBA工作表函数类,以将结果存储到变量“ Result”。
结果= WorksheetFunction.Max(a,b,c)
所以最后我将在VBA的消息框中显示该值。 MsgBox结果
现在,我将使用F5或手动运行此代码,然后在消息框中查看结果。
因此,结果是60。
在提供的所有数字(即50、25和60)中,最大数字为60。
Excel VBA中Max的高级示例
在VBA中,循环对于遍历所有单元并得出结果非常重要。我们将看到如何将VBA MAX与循环结合使用以从数字列表中获得最大值。
我有一个项目列表以及这些项目的每月销售业绩,如下所示。
现在,对于每个商品,我想知道如图所示的4个月内最大销售数量是多少。
通过在Excel中应用MAX,我们可以在几秒钟内找到它。
现在,我们将看到如何使用VBA代码查找最大值。
下面的代码将执行查找每个项目的最大数量的任务。
代码:
Sub MAX_Example2()Dim k作为整数,对于k = 2到9个像元(k,7)。值= WorksheetFunction.Max(Range(“ A”&k&“:”&“ E”&k))下一个k结束
这样可以轻松确定最大数量。
现在,手动运行代码或按F5键并查看结果,如下所示。
为了获得最大值月份名称,请使用以下代码。
代码:
Sub MAX_Example2()Dim k作为整数,其中k = 2至9个单元格(k,7).Value = WorksheetFunction.Max(Range(“ B”&k&“:”&“ E”&k))Cells(k, 8).Value = WorksheetFunction.Index(Range(“ B1:E1”),WorksheetFunction.Match _(Cells(k,7).Value,Range(“ B”&k&“:”&“ E”&k) ))下一个k结束子
根据VBA max函数提供的值,INDEX函数和MATCH函数将在下一行返回关联的月份。
要记住的事情
- 如果有重复的号码,则只会显示一个数字,然后是第一个。
- 这是excel中MIN函数的相反公式。
- MAX不是VBA函数,它是excel中的内置函数,因此请使用工作表函数类。
您可以在此处下载此Excel模板– VBA Max功能模板