上一篇韓老師講Excel223 | OFFSET函數(shù)使用示例:大量數(shù)據(jù)中查找指定數(shù)據(jù),查找公式中险污,表示區(qū)域的方法是:OFFSET(D5,0,0,500,500),表示以D5為起始單元格的500行500列的區(qū)域。
有位朋友馬上提出問題:
如果區(qū)域不是500行500列蛔糯,而是不斷擴大的動態(tài)區(qū)域怎么辦拯腮?
解決方法
公式實現(xiàn)
只要在昨天的公式的基礎(chǔ)上,把OFFSET函數(shù)的第四個和第五個參數(shù)蚁飒,即表示區(qū)域行高和列寬的參數(shù)动壤,改成動態(tài)的就好了。
公式變?yōu)椋?/p>
=IF(COUNTIF(OFFSET($D$6,0,0,COUNTA($D:$D),COUNTA($6:$6)),A4)<>0,"有","無")
公式解釋
OFFSET($D$6,0,0,COUNTA($D:$D),COUNTA($6:$6)):
以D6為基準點淮逻,向下偏移0行琼懊,向右偏移0列,再取高為COUNTA($D:$D)爬早、寬為COUNTA($6:$6)的區(qū)域哼丈。
COUNTA($D:$D)指D列的數(shù)據(jù)個數(shù),COUNTA($6:$6)指第六行列的數(shù)據(jù)個數(shù)筛严,隨著數(shù)據(jù)行列的增多醉旦,區(qū)域不斷擴大。
本部分是得到以D6為起始單元格動態(tài)區(qū)域桨啃。
COUNTIF(OFFSET($D$6,0,0,COUNTA($D:$D),COUNTA($6:$6)),A4):
在上述動態(tài)區(qū)域內(nèi)车胡,查找A4單元格的ID。
=IF(COUNTIF(OFFSET($D$6,0,0,COUNTA($D:$D),COUNTA($6:$6)),A4)<>0,"有","無"):
如果查找到的A4單元格中的ID個數(shù)不為零优幸,則返回“有”吨拍,否則返回“無”。
另一直觀例子
再舉一個很容易看到結(jié)果的例子:
如下數(shù)據(jù):
在B4單元格輸入公式:
=COUNTIF(OFFSET($D$6,0,0,COUNTA($D:$D),COUNTA($6:$6)),A4)
計算出以D6為起始單元格動態(tài)區(qū)域中1的個數(shù)网杆,往下填充羹饰,計算出2的個數(shù),然后碳却,繼續(xù)在數(shù)據(jù)區(qū)域輸入數(shù)值队秩,1、2出現(xiàn)的個數(shù)也隨著改變昼浦。
如下動圖: