GASでスプレッドシートのセル値を取得・変更する【getRange・getValues・setValues】

GASでスプレッドシートのセル値を取得・変更する【getRange・getValues・setValues】
mono
mono
こんにちは、monoです。

Google Apps Script(GAS)を使って、スプレッドシートのセルの値を取得したり、変更したりできたら便利ですよね。

今まで手作業でやっていた多くの業務を自動化できるのではないでしょうか?

当記事では、

  • GASでスプレッドシートのセル値を取得する方法
  • GASでスプレッドシートのセル値を変更する方法

というテーマで解説します。

目次

GASでスプレッドシートの値を変更・取得する手順

GASでスプレッドシートの値を変更・取得する際には、以下の手順で処理を進めます。

  1. シートオブジェクトを取得
  2. セルオブジェクトを取得
  3. セル値の取得 or 変更

それぞれの工程について解説します。

まずはシートオブジェクトを取得

まずはシートオブジェクトを取得し、「どのシートの値を取得・変更するのか」を指定できるようにします。

スプレッドシートは以下のような情報構成になっているため、セルの値を変更するにはそれぞれのオブジェクトを順に辿っていく必要があります。

  1. スプレッドシートファイル(spreadsheet)
  2. シート(sheet)
  3. セル範囲(range)・セル(cell)
  4. バリュー・値(value)

以下の記事ではシート(sheet)までの取得方法について解説していますので、シートオブジェクトの取得方法についてはこちらを参考にしてください。

あわせて読みたい
【GAS】スプレッドシートファイルの読み込み方!5つの取得方法をコード付きで解説! GAS(Google Apps Script)とスプレッドシートを使った実装するとき、まず必要なのがGASでスプレッドシートを読み込むことですよね。 スプレッドシートの読み込みは数行...

getRange関数でセルオブジェクトを取得

シートオブジェクトを取得したら、次は「どのセル範囲が対象なのか」を指定します。

セル範囲を指定するには「getRangeメソッド」を用います。

=getRange(セル範囲);

getRange関数は、1セルを指定する場合にも、複数セルを範囲指定する場合にも対応しています。

getRangeメソッドで1つのセルを指定する場合

var cell_A =getRange("A1");

getRangeメソッドで複数セルを範囲で指定する場合

var cells_A =getRange("A1:B3");

GASでスプレッドシートのセル値を取得するには

GASでスプレッドシートのセル値を取得するには、セル範囲オブジェクト(Rangeオブジェクト)に対してgetValueメソッド(getValuesメソッド)を使います。

【getValue】数値でセル値を取得

1セルの値を取得したい場合は、getValueメソッドを使います。

以下にサンプルコードを実行結果と載せますので、参考にしてください。

getValueのサンプルコード

var cell_A_value = cell_A.getValue();
Logger.log(cell_A_value);

getValueの実行結果

【getValues】配列でセル値を取得

複数セルの値を配列として取得したい場合は、getValuesメソッドを使います。

以下にサンプルコードを実行結果と載せますので、参考にしてください。

getValuesのサンプルコード

var cells_A_values = cells_A.getValues();
Logger.log(cells_A_values);

getValuesの実行結果

GASでスプレッドシートのセル値を変更するには

GASでスプレッドシートのセル値を取得するには、セル範囲オブジェクト(Rangeオブジェクト)に対してsetValue関数(setValues関数)を使います。

【setValue】数値でセル値を変更

1セルの値を変更したい場合は、setValueメソッドを使います。

以下にサンプルコードを実行結果と載せますので、参考にしてください。

setValueのサンプルコード

cell_A.setValue("テストA");

【setValues】配列でセル値を変更

複数セルの値を配列で変更したい場合は、setValuesメソッドを使います。

以下にサンプルコードを実行結果と載せますので、参考にしてください。

setValuesのサンプルコード

cells_A.setValues([[1,2],[3,4],[5,6]]);

まとめ

今回は「GASでスプレッドシートのセル値を取得する方法」「GASでスプレッドシートのセル値を変更する方法」というテーマで解説しました。

スプレッドシートの値を取得したり変更したりできるようになると、シートの処理を軽くしたり、別シートからコピペしたり、Gmailの内容を蓄積させたりなど、色々な使い方ができます。

アイデア次第で活用方法は無限大なので、ぜひ一度お試しください。

では、また。

あわせて読みたい
【GAS入門】Google Apps Scriptでできることを徹底解説!【初心者向け】 「業務効率化のため」「プログラミング入門の勉強として」など理由はさまざまですが、近年Google Apps Script(GAS)を勉強する人が増えてきています。 しかしphpやHTML...

あわせて読みたい
GASの勉強におすすめの入門本ランキング18選!【学習方法も解説】 「GAS(Google Apps Script)を勉強したいけど勉強方法がわからない、体系的にまとまっている学習書や良書を知りたい」と困っていませんか? 「プログラミングは体系的...

この記事を書いた人

28歳♂Webアナリスト/おすすめ本と生活改善グッズ紹介サイトmonoblog.jp他4サイト運営15万PVほど/楽天経済圏/リベ大生/サウナ/筋トレ/お仕事の依頼はこちら

目次