GAS (Google Apps Script)でスプレッドシート( Spreadsheet )の複数セルの値取得と貼り付け方法


はじめに
以前にこちらの記事で紹介した内容は1セルの値を取得し、別セルに貼り付ける方法をご紹介しました。
今回は複数セルの場合のコードの書き方を紹介したいと思います。
複数セルの値取得と貼り付け方
今回は複数セルの値取得と貼り付け方なので、
「条件付き書式」シートの「A1:D5」セルの値を取得し「複数セルの貼り付け先シート」の「A1:D5」セルに値を貼り付けます。
コピーする「条件付き書式」シート

ペーストする「複数セルの貼り付け先シート」シート

コード全体
function multiplecells() {
const ss = SpreadsheetApp.getActiveSpreadsheet(); //紐付けられたスプレットシートを取得
const copysheet = ss.getSheetByName("条件付き書式"); //指定シートを取得(シートとはシート1とか表示されてる所)
const setsheet = ss.getSheetByName("複数セルの貼り付け先シート"); //指定シートを取得(シートとはシート1とか表示されてる所)
let value = copysheet.getRange(1,1,5,4).getValues(); //A1:D5セルの値を取得:数字で指定する方法
setsheet.getRange(2,4).setValues(value); //A1:D5セルに値を書き込み:数字で指定する方法
// let value = copysheet.getRange("A1:D5").getValues(); //値を取得:数字で指定する方法
// setsheet.getRange("A1:D5").setValues(value); //値を書き込み:数字で指定する方法
}
実際にセルの指定してGASに記載した場合は下記画像の様になります。

複数セルの値取得
数字を指定する場合のコードは下記の様になります。
let value = sheet.getRange( 行番号 , 列番号 , 行数 , 列数 ).getValues();
下記コードのgetRange( 行番号 , 列番号 , 行数 , 列数 )の通りに「A1:D5」を指定する場合「1,1,5,4」となるのでコードとしては下記になります。
let value = copysheet.getRange(1,1,5,4).getValues(); //A1:D5セルの値を取得:数字で指定する方法
文字列で指定する場合
セルを文字列で指定する方法もあります。文字列で直接指定する場合は下記コードの様になります。
let value = copysheet.getRange("A1:D5").getValues();
複数セルの値の貼り付け
数字を指定する場合のコードは下記の様になります。
sheet.getRange( 行番号 , 列番号 , 行数 , 列数 ).setValues( 書き込む値や変数 );
下記コードのgetRange( 行番号 , 列番号 , 行数 , 列数 )の通りに「A1:D5」を指定する場合「1,1,5,4」となり
「書き込む値や変数」は今回は「value」変数ですので、コードとしては下記になります。
sheet.getRange(1,1,5,4).setValues(value);
文字列で指定する場合
セルを文字列で指定する方法もあります。文字列で直接指定する場合は下記コードの様になります。
setsheet.getRange("A1:D5").setValues(value);
実行結果
上記で紹介したコードを実行すると「複数セルの貼り付け先シート」は下記画像の状態になります。

まとめ
以上、GAS (Google Apps Script)でスプレッドシート( Spreadsheet )の複数セルの値取得と貼り付け方法でした。
GASについて詳しく勉強されたい方は書籍やUdemyを利用して勉強する方法もあります。
おすすめの書籍を記事にまとめてありますのでご参考にしていただければと思います。
また、仕事で使わないといけないけど勉強する時間がない場合などはココナラで外注するのも一つの手かと思います。
まずは登録して、費用間などを調査してみてはいかがでしょうか。
