Board logo

標題: Offset & Mod 函數 [打印本頁]

作者: yc1031    時間: 2012-8-29 19:21     標題: Offset & Mod 函數

[attach]12323[/attach][attach]12323[/attach]

各位好,
想請教以下函數是怎麼來的?
1.  ROW(1:1)     後面為什麼要減1呢?
2.  我知道20 是20個資料欄的意思, 但為什麼要用 "/"  ?
3.  MOD(ROW(1:1)-1,20)   這個就完全不明白了

OFFSET(Sheet1!$A$1,(ROW(1:1)-1)/20,MOD(ROW(1:1)-1,20))
作者: ANGELA    時間: 2012-8-29 23:27

有不明白的地方善用編輯列中反白公式中的某一小段再按F9可看出在公式中的運算結果.來了解公式的運作
ROW(1:1)往下copy 在第一列等於1在第二列等於2......20列等於20
(ROW(1:1)-1)/20在第一列會得到0,在第二列會得到0.......第21列得到1
為了要前面20列都得到0所以要減1,否則第20列就會得到1了
MOD(ROW(1:1)-1,20)
同樣的道理MOD(ROW(1:1)-1,20)只是目的不同,在第一列要得到0第二列要得到1....第20列要得到19,
但第21列要得到0第22列要得到1......
作者: ML089    時間: 2012-8-30 17:24

回復 1# yc1031 [/b)
OFFSET(Sheet1!$A$1,(ROW(1:1)-1)/20,MOD(ROW(1:1)-1,20))

問1.  ROW(1:1)     後面為什麼要減1呢?
答1. ROW(1:1) 是公式下拉計數器,由1、2、3 ...
       OFFSET(Sheet1!$A$1, 列位置是由 0、1、2 ... 所以 ROW(1:1)-1 才能由0起計數

問2.  我知道20 是20個資料欄的意思, 但為什麼要用 "/"  ?
答2. ROW(1:1)-1)/20 是簡化寫法,應該是 INT(ROW(1:1)-1)/20),以每20列增加1的方式出現數字,0,0,0,(20個 0)....1,1,1...(20個 1)....

問3.  MOD(ROW(1:1)-1,20)   這個就完全不明白了
答3. ROW(1:1) 是公式下拉計數器,由1、2、3 ...
        外加MOD(....,20) 表示每20個做一次循環記數 0,1,2....,19,  0,1,2.....,19,  0,1,2...

函數說明在函數上按F1就可以得到說明




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)