EXCEL函数公式直接操作的是数组,完全可以达到循环的目的,可以理解为是封装了的循环函数,下面举两个例子来说明:
问题1:条件求和 公式SUMIF,求序号大于3的数据的和。
a. 用函数公式就非常简单在C2单元格输入=SUMIF(A2:A6,">3",B2:B6)就能行到结果42
b. 如果用VBA就复杂多了,代码如下:
setsh=ActivateSheetsum=0#保存求和的结果Fori=2to6Ifsh.cells(i,1)>3Thensum=sum+sh.cells(i,2)EndifNexti问题2:条件查找公式VLOOKUP,依次把B列的名字在A列中查找,如果找到就标记为TRUE,如果没有找到就标记为FALSE.
a. 函数就非常简单了,只需要在C2输入公式=IF(ISERROR(VLOOKUP(B2,A:A,1,FALSE)),FALSE,TRUE),然后下拉下C4
b. VBA代码就比较复杂了,如下:
setsh=ActivateSheetFori=2to4isexist=FALSEForj=2to4Ifsh.cells(i,2)=sh.cells(j,1)Thenisexist=TRUEEndIfNextjsh.cells(i,3)=isexistNexti