例文を使って繰り返し業務を時短

【GAS】スプレットシートのセルを指定する様々な方法

【GAS】スプレットシートのセルを指定する様々な方法 GAS

特定のセルを指定する方法

getActiveSheet().getRange(row, column)メソッド
:セルをgetRange()メソッドを使用して、指定したセル範囲を取得する方法です。

var cell = activeSheet.getRange(1, 1); // A1セルを取得する例

別のA1セルの指定方法

var cell = activeSheet.getRange('A1'); // A1セルを取得する例

getRange(row, column, numRows, numColumns)メソッド
:行数、列数、開始行、開始列を指定して、getRange()メソッドを使用して、セル範囲を取得する方法

  • row: 開始行のインデックス(1から始まる数値)
  • column: 開始列のインデックス(1から始まる数値)
  • numRows: 取得する行数
  • numColumns: 取得する列数
var cell = activeSheet.getRange(1, 1, 1, 1); // A1セルを取得する例

複数のセル範囲を指定して、getRangeList()メソッドを使用して、セル範囲のリストを取得する方法

var rangeList = activeSheet.getRangeList(['A1', 'B2:C3']); // A1セルとB2:C3範囲を取得する例
var cell = rangeList.getRanges()[0]; // A1セルを取得する例

シート間で特定のセル範囲を指定して転記する方法

setValues() メソッドを使用して、あるシートのデータを別のシートに転記する例

function copyData() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sourceSheet = ss.getSheetByName('Sheet1');
  var targetSheet = ss.getSheetByName('Sheet2');
  
  var data = sourceSheet.getDataRange().getValues(); // ソースシートのデータを取得
  
  targetSheet.getRange(1, 1, data.length, data[0].length).setValues(data); // データをターゲットシートに転記
}
  1. getSheetByName() メソッドを使用して、転記元となるシートと転記先のシートを取得
  2. getDataRange() メソッドを使用して、転記元のシートのデータを取得
  3. setValues() メソッドを使用して、転記先のシートにデータを転記

setValues:複数セルを指定する場合

配列を使った例

setValues() メソッドを使用して、A1:C3セルに2次元配列の値を設定してしている例

function setValues() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();
  var values = [    ["apple", "orange", "banana"],
    [1, 2, 3],
    [true, false, true]
  ];
  
  sheet.getRange(1, 1, 3, 3).setValues(values); // セル A1:C3 に値を設定
}

単一のセルに値を設定する方法

setValues() メソッドの代わりに、 setValue() メソッドを使用することで、単一のセルに値を設定することができます

function setValue() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();
  var value = "Hello, world!";
  
  sheet.getRange(1, 1).setValue(value); // セル A1 に値を設定
}

上記の例では、 setValue() メソッドを使用して、A1セルに “Hello, world!” という値を設定しています。

別のスクリプトの書き方

getRange() メソッドを使用して、A1セルを取得し、 setValue() メソッドを使用して、セルに値を設定

function setRangeValue() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();
  
  var range = sheet.getRange("A1"); // セル A1 を取得
  range.setValue("Hello, world!"); // セルに値を設定
}

setValue() メソッドを複数回使用する方法

setValue() メソッドを複数回使用して、A1セルに “apple”、B1セルに “orange”、C1セルに “banana” という値を設定

function setValueMultiple() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();
  
  sheet.getRange(1, 1).setValue("apple");
  sheet.getRange(1, 2).setValue("orange");
  sheet.getRange(1, 3).setValue("banana");
}

コメント

タイトルとURLをコピーしました