Row函數在Excel數組公式中的應用

絕大多數excel數組公式中,都可以看到row函數的身影,那麼row函數到底起到什麼作用呢?我們先從它的基本用法說起。

Row函數,返回一個引用的行號。

  • row() 返回公式所在行的行數,如:在第5行輸入=row() 公式返回值 5

  • row(單元格地址) 返回單元格所在的行數,如:Row(b6) 返回B6單元格所在的行6

  • row(開始行數:終止行數) 返回引用行的行數,結果是一組數。如:Row(1:3) 返回第1:3行所在的行數{1;2;3},由於在單元格中只能顯示一個值,所以顯示的結果是1

  • 生成這樣的序號有用嗎?當然有!


    【例1】求1+2+3+4+5 ...+100=?

    公式{=sum(row(1:100))}

    公式說明:

    用row函數生成1~100的序號,然後用sum求和

    . 由於是數組運算,需要在公式表達式最後按ctrl+shift+enter鍵確認輸入。


    【例2】截取字元串中最前面的數字,假設A1單元格中值為 353.54優質

    公式:

    =LOOKUP(9^9,--LEFT(A1,ROW(1:99)))

    公式說明:

  • row(1:99) 生成{1 ;2;3;4;5;6...99} 的序號,共99個數字

  • --Left(A1,ROW(1:99),分別從左邊截取1個,2個,3個.....99個字元, 99是該字元可能的最大長度,如果字元最長20個,也可以用row(1:20)。由於截取後是文本,所以需要用--把文本型數字轉換成數值,把純文本轉換成錯誤值。{3;35;353;#VALUE!;#VALUE!;#V.......;#VALUE!}

  • Loookup(9^9,) 用一個足夠大的數在截取後的數字中進行查找,返回最後一個數字。

  • 由於lookup可以支持數組運算,所以公式不需要按三鍵輸入。

  • 總結:row() 函數的主要作用是生成一組序號,在後利用這組序號對另一個或一組值進行多次處理。
    推薦閱讀:

    《客映直播》資料04 吳廣儒老師辯證象數組方實踐課實錄
    Excel工作表中數組常量的使用方法
    js取數組兩個數組的交集|差集|並集|補集|去重
    數組,鏈表,二叉樹,這些是為了解決什麼問題而出現的呢?
    Excel|sumif()相當於包含sum()函數的數組公式

    TAG:公式 | 函數 | Excel | 數組 |