操作方法
例如,根据下图成绩表中,求出大于80分的成绩平均分。 我们用两种方法来求。 一、函数公式法:把结果放置在B2单元格中。在B2单元格中录入条件求平均值的公式:=AVERAGEIFS(B2:C15,B2:C15,">80") 注意一下AVERAGEIFS函数的用法是: AVERAGEIFS(求平均值的区域,条件区域1,条件1,条件区域,2,条件2,......)
回车,我们看到,函数已经将大于80分的平均成绩求出来了:92.75分。 上述我们列举的是多条件求平均值的公式,如果求平均值的区域和条件区域相同,第二参数可以省去。因为本例中我们使用的单条件,可以这样简化公式为: =AVERAGEIF(B2:C15,">80"),回车,可以看到,函数仍然返回92.75。 注意:第一次我们用的是多条件求平均值的公式AVERAGEIFS 第二次我们用的是单条件求平均值的公式AVERAGEIF
二、vba代码: 我们把所得结果写入到E6单元格中。 我们先用下列方法将【开发工具】选项卡调出来。 点击【文件】/【选项】,调出【excel选项】工具框。 点击【excel选项】中的【自定义功能区】按钮,将右侧【主选项卡】下面的勾勾勾选上。点击【确定】。
点击【开发工具】/【visual basic】,在弹出的窗口中点击【视图】/【代码窗口】。就调出了vba的代码窗口。我们将通过运行vba的代码求大于80分的平均成绩。
在代码窗口写入代码: Sub 求大于80分的平均成绩() Dim a%, bb%, cc%, k% For a = 1 To 40 Range("b2:c15")(a).Select bb = Range("b2:c15")(a) If bb > 80 Then cc = cc + bb: k = k + 1 Next Range("e6") = cc / k End Sub
通过以下三种方式运行代码: 1.通过点击代码窗口的运【运行】按钮。 2.点击excel工作表中的【宏】,将代码中宏名选择在框内,点击【执行】按钮。 3.点击【插入】/【形状】,插入一个形状,例如矩形,右击此矩形,将上述宏名选中,点击【确定】。然后单击矩形。
上述三种方法运行的结果,均在E6单元格中填入了符合条件的平均值92.75分,同第一种方法结果相同,说明我们写的代码是正确的。