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

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

新規登録して質問してみよう
ただいま回答率
85.31%
Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

Q&A

1回答

6520閲覧

GAS 複数Excelファイルをスプレッドシートに一括変換、フォルダが見当たらない

mamimu777

総合スコア0

Google スプレッドシート

Google スプレッドシートは、フリーで利用できる表計算ソフト。Webアプリのためインターネットに接続することで利用できます。チャートやグラフの作成のほか、シートを他のユーザーと共有したり、同時に作業を進めることも可能です。

0グッド

0クリップ

投稿2022/04/24 14:22

下記コードを実行後、フォルダ(変換後に格納するフォルダ)が見当たらないエラーが発生しています。
[GoogleJsonResponseException: API call to drive.files.insert failed with error: File not found: ]

フォルダは確かに存在しています。
(※Drive APIは追加しています)
(※フォルダIDはここに記載するため、xxxなどの記号に変えています。実際は本当のIDを記載しています)
どなたか原因がわかる方、対処法を教えていただきたいです。><

function myFunction() { // Excelファイルが入っているフォルダをidによって取得 var source_folder = DriveApp.getFolderById('xxxx'); // Excelファイルたちを変数に保存 var excel_files = source_folder.getFiles(); // 変換されたファイルが格納されるフォルダをidによって取得 var dest_folder = DriveApp.getFolderById('xoxoxoxo'); // Excelファイルをイテレートして順にスプレッドシートに変換 while(excel_files.hasNext()) { var file = excel_files.next(); convertToSpreadsheet(file, dest_folder); } } function convertToSpreadsheet(file, folder) { // 各種オプションを設定 // mimeTypeの指定により, スプレッドシートに変換される options = { title: file.getName(), mimeType: MimeType.GOOGLE_SHEETS, parents: [{id: folder.getId()}] }; // Drive APIへfileをPOSTする Drive.Files.insert(options, file.getBlob()) } コード

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

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

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

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

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

mamimu777

2022/04/26 10:46

pnoirさん、アドバイス頂きありがとうございます!!!!>< 置き換えて実行したところ、 2点エラーの赤線が引かれてしまいました。 {supportsAllDrives : true} 先頭の「 { 」と、 コード最文末の 「 } 」です。 m(><)m
guest

回答1

0

下記のように、supportsAllDrives : true
を追加した場合はどうでしょうか?

js

1 options = { 2 title: file.getName(), 3 mimeType: MimeType.GOOGLE_SHEETS, 4 parents: [{id: folder.getId()}], 5 supportsAllDrives : true 6 };

投稿2022/04/26 01:08

編集2022/04/26 10:53
退会済みユーザー

退会済みユーザー

総合スコア0

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

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

mamimu777

2022/04/26 10:47

pnoirさん、アドバイス頂きありがとうございます!!!!>< 置き換えて実行したところ、 2点エラーの赤線が引かれてしまいました。 {supportsAllDrives : true} 先頭の「 { 」と、 コード最文末の 「 } 」です。 m(><)m
退会済みユーザー

退会済みユーザー

2022/04/26 10:54

修正しました。どうでしょうか。
mamimu777

2022/04/26 11:58

qnoirさん、早速にありがとうございます! 置き換えて実行してみましたが、初めと変わらずエラーが出てしまいます。( ; ; ) GoogleJsonResponseException: API call to drive.files.insert failed with error: File not found: xxxxxx convertToSpreadsheet @ コード.gs:29 myFunction @ コード.gs:13
退会済みユーザー

退会済みユーザー

2022/04/26 22:53

すみません、こちらでは同様のエラーを再現することができませんでした(こちらの手元環境では正常にファイルがコピーされています) 他の方の解決提示を待つしかありません。 お役に立てずすみません。
mamimu777

2022/04/29 03:44

qnoirさん、手元の環境で時間を割いて確認までして頂いて、ありがとうございます><!! 試しに、マイドライブに自分でエクセルファイルを作成し、コードをかけたところ、初めのコードでも正常に動くことが確認できました。 ただコードをかけたいのは、他の人が作った、複数人と共有しているエクセルファイルです。 1月に同じコードを使って、かけた時は正常に動いたのを覚えています。 それ以降、設定の変更などが考えられるかもしれないと思えて来ました。 調べるべきことが、見えて来ました! qnoirさん、本当にありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.31%

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

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

質問する

関連した質問