質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

Google

Googleは、アメリカ合衆国に位置する、インターネット関連のサービスや製品を提供している企業です。検索エンジンからアプリケーションの提供まで、多岐にわたるサービスを提供しています。

Q&A

解決済

1回答

6579閲覧

Googleドライブでのファイル移動をスクリプトを使用し実行したいです

inutotokushima

総合スコア7

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

Google

Googleは、アメリカ合衆国に位置する、インターネット関連のサービスや製品を提供している企業です。検索エンジンからアプリケーションの提供まで、多岐にわたるサービスを提供しています。

0グッド

1クリップ

投稿2016/02/05 08:49

初心者のためわかりにく説明となり失礼いたします。

GoogleAppsのGoogleドライブ上でフォルダAとフォルダBを作成しファイルを管理しております。

フォルダAにあるファイルXをフォルダBへ移動
という作業をGoogleAppsスクリプトで実行したいです。

<スクリプト実行前>
フォルダA-ファイルX
フォルダB-無し

<スクリプト実行後>
フォルダA-無し
フォルダB-ファイルX

という風にしたいのですが
以下のようなスクリプトを実行してもエラーとなってしまいます。
どのようすればよいかご教授いただけますでしょうか。
(以下****** には 対象のフォルダID を入力し実行)

function moveAtoB() {
var INPUT = DriveApp.getFolderById('*******************');
var OUTPUT = DriveApp.getFolderById('********************');
var files = INPUT.getFiles();
for (var i in files) {
Utilities.sleep(500);
files[i].addToFolder(OUTPUT);
files[i].removeFromFolder(INPUT);
}
};

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

やりたいことは次のようなスクリプトであっているでしょうか。

javascript

1function moveAtoB() { 2 var INPUT = DriveApp.getFolderById('*****'); 3 var OUTPUT = DriveApp.getFolderById('*****'); 4 var iterator4files = INPUT.getFiles(); 5 while (iterator4files.hasNext()) { 6 var file = iterator4files.next(); 7 OUTPUT.addFile(file); 8 INPUT.removeFile(file); 9 } 10};

どうして提示されたようなコードになったのか、理解できないのですが、どのような開発環境で開発されていますか。

投稿2016/02/05 09:13

unau

総合スコア2468

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

inutotokushima

2016/02/05 09:19 編集

ご教授いただきましたコードで実行おこないました所、やりたいことが出来ました。 教えていただき大変ありがとうございました。環境は個人のGoogleAppsのアカウントで行っております。
unau

2016/02/05 09:46

GoogleAppsScript のコードは、デフォルトだとブラウザ上の GAS Editor で編集することになると思いますが、その場合、入力中にコード補完されるので、Folder クラスの getFiles() メソッドの戻り値が「File クラスのインスタンスの配列」ではなく、「File クラスを返すイテレータ」であることや、File クラスに addToFolder() メソッドや removeFromFolder() メソッドがないのは、コードを書いていてわかるのではないかと思いまして。また、ネット上のリファレンス (たとえば https://developers.google.com/apps-script/reference/drive/drive-app) を見れば、このような間違いは生じにくいのになあ、と思いまして。
inutotokushima

2016/02/05 09:59

リファレンス等確認せず他のサイトから参考のコードを参考としていたため理解しにくくなってしまい大変失礼いたしました。また色々とご教授いただき大変ありがとうございました。早急なご対応いただき大変助かりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問