【GAS】スプレッドシートのシートをコピーする|copyTo()

GAS(Google Apps Script)を用いて、スプレッドシートのシートをコピーしたい方向けに、『copyToメソッド』を紹介していきたいと思います。
業務効率化・自動化で、シートをコピーするのは多用するので、活用していただけると嬉しいです。

記事を書いた人

こんにちは。当ブログの管理人の『くろん』です。
30代サラリーマン、新規事業推進室に所属。ブラック企業努め時代に身に着けた業務効率化ノウハウをアウトプットしていきます。
読んでくれた方の業務が一秒でも早く終わりますようにの精神で記事書いてます!!

スポンサーリンク
目次

シートをコピーする方法

シートをコピーするには、『copyToメソッド』を用います。

sheet.copyTo(destination)

//sheetは、Sheetクラスを設定。コピーしたいシート。
//destinationは、Spreadsheetクラスを設定。どこのスプレッドシートにコピーさせたいか。

同じスプレッドシートにコピーする

function copysheet_same() {
  // コンテナバインドされてるスプレッドシートを取得
  let spreadsheet1 = SpreadsheetApp.getActiveSpreadsheet();
  // シート名指定でシートを取得
  let sheet1 = spreadsheet1.getSheetByName('元データ');

  // 同じスプレッドシートに『元データ』シートをコピー
  sheet1.copyTo(spreadsheet1);
}

このような形で、同じスプレッドシートに、『元データ』シートのコピーである『元データ のコピー』シートが生成されました。

ちなみに、コピーしたシートの名前を、リストに基づいて変更したいみたいなことがあれば、こちらの記事をあわせてご確認ください。

違うスプレッドシートにコピーする

function copysheet_different() {
  // コンテナバインドされてるスプレッドシートを取得
  let spreadsheet1 = SpreadsheetApp.getActiveSpreadsheet();
  // スプレッドシートIDでスプレッドシートを取得(ID書き換えて!)
  let spreadsheet2 = SpreadsheetApp.openById('destinationssID');
  // シート名指定でシートを取得
  let sheet1 = spreadsheet1.getSheetByName('元データ');

  // 異なるスプレッドシートに『元データ』シートをコピー
  sheet1.copyTo(spreadsheet2);
}

上記GASの『destinationssID』は、コピーしたい先のスプレッドシートIDに変更する必要があります。
スプレッドシートIDは、スプレッドシートのURL『https://docs.google.com/spreadsheets/d/【ここの部分の英数字】/edit#gid=0』から取得することができます。

copyToメソッドまとめ

『copyToメソッド』は、スプレッドシートのシートをコピーするメソッドです。
コピー先にSpreadsheetクラスを指定することで、同じスプレッドシート、異なるスプレッドシートにシートをコピーすることができます。

業務効率化・自動化では、めっちゃつかうメソッドなので、使いこなせるようになりたいですね!

スポンサーリンク
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次