【コピペで使える】GASで任意のファイルをコピーしてみる

how-to-make-a-copy-of-files
URLをコピーする
URLをコピーしました!
目次

GASで任意のファイルをコピーしてみる

今回の投稿では、GASを使って任意のファイルをコピーするメソッドをご紹介します。

Googleドライブですでにあるファイルをコピーして再利用することはよくあることだと思いますが、自分のパソコン上でコピーするのとは違い、Googleドライブ上でコピーするのには比較的時間がかかります。

つい最近、ChromeブラウザではCtrl + CとCtrl + Vでコピー&ペーストができるようになり、作業効率が少し向上しましたが、依然としてファイルをコピーするには数秒の時間がかかります。

今回は、コピー作業をもっと効率よく行いたいというお悩みを抱えている方のために、GASを使ってファイルをコピーする方法をご紹介します。この方法を活用すれば、ワンクリックで複数のファイルを一括コピーするなんてことも夢ではないですよ。

本記事が役立つターゲット読者

  • たくさんのファイルをコピーしながら作業をしなければならない方
  • テンプレファイルをベースにGASにファイルを生成させたい方

ファイルをコピーするコード

本ページでは、Googleドライブ上にあるファイルをコピーする方法をご紹介します。

  1. makeCopy(ファイルIDを使って任意のファイルをコピーする)

動作のデモ動画

makeCopy(fileName, destination)のサンプルコード

引数に入れる値

  • fileName(文字列) — コピーしたファイルのファイル名(省略可)
  • destination(フォルダオブジェクト) — ファイルを作成したいフォルダ(省略可)

サンプルコード

const fileId = "1MuWaLoCQh8rqzoIEcwuupTPY_70jG4RZLiisyEyP-bQ"; //コピー元のファイルID
const folderId = "1BUAeaiwN3rKrlyZ2xnmkjuATf9NTAd2F"; //コピー先のフォルダID

//元のファイル名 + のコピーという名前でコピー元のファイルと同じフォルダにコピーを作成するコード
function sampleCodeForMakeCopy() {
  let file = DriveApp.getFileById(fileId);
  let newFile = file.makeCopy();
  let rootFolder = DriveApp.getRootFolder();
}

//任意のファイル名でコピー元のファイルと同じフォルダにコピーを作成するコード
function sampleCodeForMakeCopyWithDesignatedFileName() {
  let file = DriveApp.getFileById(fileId);
  let name = "コピーしたファイル";
  file.makeCopy(name);
}

//任意のファイル名でマイドライブにコピーを作成するコード
function sampleCodeForMakeCopyInARootFolder() {
  let file = DriveApp.getFileById(fileId);
  let name = "コピーしたファイル";
  let rootFolder = DriveApp.getRootFolder();
  file.makeCopy(name, rootFolder);
}

//任意のファイル名で任意のフォルダにコピーを作成するコード
function sampleCodeForMakeCopyInADesignatedFolder() {
  let file = DriveApp.getFileById(fileId);
  let name = "コピーしたファイル";
  let folder = DriveApp.getFolderById(folderId);
  file.makeCopy(name, folder);
}

変数の説明

fileId = コピー元のファイルID
folderId = コピー先のフォルダID
file = コピー元のファイル
fileName = コピーしたファイルのファイル名
rootFolder = マイドライブ

サンプルコードは

にあります。
誰でも閲覧できるように共有設定をしておりますが、もしファイルを開くことができなければブラウザのシークレットモードでアクセスしてください。

今回は、使い方に合わせて4つのサンプルコードを用意しました。

  1. sampleCodeForMakeCopy(コピー元と同じフォルダにファイルをコピー
  2. sampleCodeForMakeCopyWithDesignatedFileName(任意のファイル名でコピー元と同じフォルダにコピー
  3. sampleCodeForMakeCopyInARootFolder(任意のファイル名でマイドライブにコピー
  4. sampleCodeForMakeCopyInADesignatedFolder(任意のファイル名で任意のフォルダにコピー

上記は、どこのフォルダに保存するのかファイル名をどうするのかによって少し使い方に違いがあります。

わりと簡単にコピーすることができましたね。

上記のコードを活用すれば、任意の場所に一括で大量のファイルのコピーを作成したりと行ったことができるようになります。

時間短縮になりますので、ぜひ活用してみてください。

まとめ

今回の記事はいかがでしたか?

ファイルのコピーをすることは日常業務でも少なくないと思いますが、その煩雑な作業を効率化してみませんか?GASを使えるようになれば、このような効率化を行うことができるようになりますので、ぜひ身につけてほしい技術です。

how-to-make-a-copy-of-files

この記事が気に入ったら
いいね または フォローしてね!

よかったらシェアしてね!
URLをコピーする
URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

初心者でもわかるGoogle Apps Script活用のススメの管理人。
業務でラクをするという邪な目的のためにプログラムを独学で勉強し始め、初心者向けのGoogle Apps Scriptの使い方サイトを運営するに至る。
ラクをするためにはどんな苦労も厭わないという考えから、手っ取り早くスキルアップするためにCrowdWorksやLancersなどで仕事を受注し始め、過去にはTopClass PRO Crowd workerに認定された経験を持つ。
現在では、業務効率化システムの開発を行う会社の代表を務める。

コメント

コメントする

目次
トップへ
目次
閉じる