【レシピ集】GAS × セルの値を取得する(getRange)

ビジネス

便利なGASレシピ集!に戻る場合は以下から

便利なGASレシピ集! – [2019年最新版]

2019年5月22日

はじめに

どうも、ビジボットです。
今回GASの記事は「getRange()」を使って、スプレッドシートに入力されているセルの値を取得する方法を紹介しています。 サンプル用のスプレッドシートを用意して「getValue()」と「getValues()」を使ってどのように値を取得するか、実際の動きを含めて見ていきます。また、「getValues()」は2次元配列のため、2次元配列の値を取得する方法も書いてます。

それではさっそく始めていきます!

セルの値を取得する

スプレッドシートに入力されているセルの値を取得するため、以下サンプル用のスプレッドシートを用意しました。

sampleスプレッドシート
sampleスプレッドシート

この中で、「ビジボットイチロウ」と記載されているセルの値を取得したいと思います。GASのエディタを開く方法などは以下ページを参照してください。

GAS初心者が抑えるべきポイント徹底解説!

2019年3月7日

セルの値を取得するレシピ

Logger.logの結果

現在開いているシートまでを変数で指定できたら、セルの値を入れる変数を作成します。今回の場合 『getVal』 を作成し、そこにセルに記載されている取得した値を入れていきます。

getRange()を使う

Rangeとは、セルの番地を示すものと思っていただければOKです。
getRange()の中に指定するコードですが、他にも記述方法があります。

Logger.logの結果

記述の仕方は違いますが、両方とも同じセルの値を取得することができてます。

getValue()を使う

getRange()の中に含まれているセルの値を取得します。
よく、getRange()まで取得して、getValue()を忘れるケースがあります。

上記getValue()がない場合はエラーにならず処理が終了するので、Logger.logで見てみる。

Logger.logの結果

結果は「Range」が返ってくるが、値は返ってこない。
エラーが無いように必ずLogger.log()を使いながら結果もチェックしましょう。

複数セルの値を取得レシピ

Logger.logの結果

getValue()ではなく、複数範囲を取得する場合、getValues()を使います。
その結果、値は2次元配列で取得できます。

getValues()を使う

getRange()の中は、指定する領域が増えてます、1,1は(1行目,1列目)のA1セルに該当する部分です、5,5は(5行目,5列目)のD5セルに該当する部分です。

getValues()で遊ぶ

Logger.logの結果

2次元配列を取得する場合、配列の番号を(getVal[0]やgetVal[0][0]などで)指定してデータを取り出すことができます。配列の要素数も「length」を使えば簡単に取得できるのでfor文とかで使えます。
以上でセルの値を取得する方法は終わりです。次は値を変更します。

便利なGASレシピ集!に戻る場合は以下から

便利なGASレシピ集! – [2019年最新版]

2019年5月22日