他のスプレッドシートのシートをコピーする

Google Apps Scriptの入門初心者として最初の頃に立ちはだかる壁はおそらく「他のシートを別のシートへとコピーする」という作業でしょう。つい、シートを追加するということで、insertSheetメソッドを使ってしまいますが、このメソッドは同じスプレッドシート内のデータしか参照することが出来ません。

そこで使うのがcopyToメソッドです。書式もまるごと全てコピーしてくるので便利です。

今回使用するスプレッドシート

ソースコード

  • コピー元のスプレッドシートのIDをssidに格納する
  • ssには現在のコピー先のスプレッドシートを指定する
  • sourceにはssidを使ってコピー元のスプレッドシートを指定する
  • sheetにはコピー元のシート名を指定してシートを取得
  • sheet.copyToでssを指定する事でコピーする
  • このままでは、○○のコピーというシート名になってしまうので、setNameでシート名を指定する

単純な事なのですが、間違えやすく嵌る要素なので注意が必要です。

図:無事にコピーされました

共有してみる:

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください。