iT邦幫忙

2021 iThome 鐵人賽

DAY 14
0
Software Development

一份考卷不夠你可以出兩份!用 google apps script 出線上考題系列 第 14

[DAY 14] getRange 與 getDataRange

接下來說說我覺得非常好用的兩個函數
getRangegetDataRange
這兩個函數在取得google sheet 的資料時經常會使用到
以下來說明兩者之間的差異


getRange
這個函數就是選定資料範圍
指定方式可如下
1.選定某一個儲存格(cell)
要注意的是 A1 是**「第 1 欄、第 1 列」而不是(0,0)**
如果要指定 A3 可以使用getRange(3,1),採先寫列再寫欄
也可以寫getRange('A3')

2.選定某幾欄
如:A5~B10 可以使用getRange(5, 1, 6, 2)
意為「從第5列第1欄(A5) 開始,共取 6 列 ( 10 - 5 + 1 )、取2欄(A,B 共2欄)」
也可以使用getRange('A5:B10')

如果想要特別指定某欄
如「C欄」,可以使用getRange('C:C')
如「A欄中,A5以下」,可以使用getRange('A5:A')

3.選定某幾列
如:A5~A10 可以使用getRange(5, 1, 6)
意為「從第5列第1欄(A5) 開始,共取 6 列 ( 10 - 5 + 1 )」
也可以使用getRange('A5:A10')


getDataRange
有的時候就只是想要抓出整個分頁的資料
不知道他的分頁的欄數及列數時
可以使用這個函數

他會從「A1 到 此分頁的最後一欄最後一列」的資料都抓出來
相當於getRange(1, 1, sheet.getLastRow(), sheet.getLastColumn())


如果是已知矩形區域我覺得可以多利用getRange(矩形區域)
例如已知為 Bx:Cy 就可以用 getRange('B' + x + ':C' + y)
即可取得彈性的矩形區域

之得如何獲取資料範圍後
接下來就是取得資料、寫入資料囉!!


上一篇
[DAY 13] 把Google SpreadSheet 當作題庫資料庫
下一篇
[DAY 15] getValues 與 setValues
系列文
一份考卷不夠你可以出兩份!用 google apps script 出線上考題30

尚未有邦友留言

立即登入留言