0
1

More than 3 years have passed since last update.

【GAS】【SpreadSheet】セルの操作(値取得編)

Last updated at Posted at 2020-02-22

Spreadsheetのセルを操作する編

0.はじめに

この記事ではGASからSpreadsheetのセル操作における、セル内の値を取得する方法についてご紹介する。
1.特定のセルの中身を取得する。
2.特定の範囲のセルの中身をfor文を使って順に同じオブジェクトに取得する。
3.特定の範囲のセルを配列使って取得する。

Method


//特定のセルを指定
sheetobject.getrange('列行番号');
//'列行番号'はA1、B5など。

//特定のセルの範囲を指定
sheetobject.getrange('行番号, 列番号, 行数, 列数');
//行番号, 列番号, 行数, 列数の順に入力する。

rangeobject.getValue();
//単体のセルの値を取得する。

sheetobject.getdatarange().getvalues();
//sheetの値を全てdataとして取得する。

1.特定のセルの中身を取得する。

A1に値(5)が入っている。この値(5)を取得してオブジェクトに格納する。
image.png

function myFunction() {
  var ss1 = SpreadsheetApp.openById("Spreadsheet-key");
  //spreadsheetをss1に格納。

  var sh1 = ss1.getSheetByName("sheet1");
  //特定のシート(sheet1)をsh1に格納

  var sell1 = sh1.getRange('A1')
  Logger.log(sell1.getValue());

結果

image.png

2.特定の範囲のセルの中身をfor文を使って順に同じオブジェクトに取得する。

A1からA10に格納している値は以下。この値をfor文使って順に同じオブジェクトに格納していく。
image.png


function myFunction() {
  var ss1 = SpreadsheetApp.openById("spreadsheet-key");
  //spreadsheetをss1に格納。

  var sh1 = ss1.getSheetByName("sheet1");
  //特定のシート(sheet1)をsh1に格納

  var sell1 = sh1.getRange('A1')
  //sell1にA1の値を格納する。

  for(var i = 1;i <= 10; i++)
  {
    var sell3 = sh1.getRange(i,1,1,1);
    //getrange(行番号, 列番号, 行数, 列数);
    Logger.log(sell3.getValue());
  }

結果

image.png

3.特定の範囲のセルを配列使って取得する。

シートは以下のように値が入っている。
配列を使って、自由自在に値を取得する。
image.png

function myFunction() {
  var ss1 = SpreadsheetApp.openById("1-rQe4tnalMfTKRDCRCN6LWTaGvum67Ok8wnlxyG3-lo");
  //spreadsheetをss1に格納。 
  var sh1 = ss1.getSheetByName("sheet1");
  //特定のシート(sheet1)をsh1に格納
  var sell1 = sh1.getRange('A1')
  //sell1にA1の値を格納する。

  var data1 = sh1.getDataRange().getValues();
  //sh1の列を全てdataとして格納する。

  Logger.log(data1[0][0]);
  Logger.log(data1[2][1]);
  //配列を指定して取得する。

結果
image.png

まとめ

今回はGASを使って特定のセルの値を取得する方法を紹介しました。
次回はGASからセルに入力する編を書こうと思います。
取得・入力が理解できれば、基本的操作はこれでほぼ理解したと言えるでしょう!
あと書きたいのは、GASで計算式を扱う方法、セルに計算式を入力する方法...

この辺が終わったあと、Gmail操作編を描こうと思っています。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1