Google関連

[Google Apps Script]Google ドライブにあるファイルをファイル名順で出力する

以前書いた「Google ドライブにある画像をスライドに一括挿入するGASコード」を元に、ファイル名順に画像を挿入したい、というクラウドワークス依頼を見つけました。

これに関連して、Shinji(@sakichi01_)さんから、Folder.getFilesメソッドにはソート機能が備わっていないという情報をいただきました。

となると、スプレッドシートを使ってファイル名で並べ替えたり、配列に格納してソートしたり、何かしらの処理を挟む必要がありますが、リファレンスを眺めていたら、拡張サービス(Advanced Drive Service)の方にはorderByパラメーターが用意されているのを見つけました。

これを使えば、簡単にファイル名でソートできそうです。

指定したフォルダ内にあるJPEGファイルとPNGファイルの名前を降順で出力するスクリプト

試しに簡単な処理を書いてみました。
クラウドワークスに依頼が出ている以上、さすがに回答そのままな処理は書けないので、“指定したフォルダ内にあるJPEGファイルとPNGファイルの名前を降順で出力する”処理です。

function myFunction() {
  var folId = "(Google ドライブのフォルダID)";
  var list = Drive.Files.list({
    q: '"' + folId + '" in parents and (mimeType contains "jpeg" or mimeType contains "png")',
    spaces: 'drive',
    orderBy: 'title desc'
  });
  if(list.items.length > 0) {
    list.items.forEach(function(file) {
      Logger.log(file.title);
    });
  }
}

上記コードを実行する前に、リソース → Google の拡張サービス から、「Drive API」をオンにする必要があります。

また、検索に使用するクエリ文字列は、下記リファレンスをご参照ください。

拡張サービスを有効にする必要がありますが、より柔軟にファイル処理を行いたいときは、こちらを使った方が良いかもしれません。クエリによる検索も非常に便利です。

Office Scriptsってどんな機能?前のページ

「ics ファイルを作成する Power Automate での Flow の作り方」を試してみました。次のページ

関連記事

  1. Google関連

    [Google Apps Script]拡張サービスを使用する。

    Google Apps Scriptでは「拡張サービス」(Advanc…

  2. Google関連

    [Google Apps Script]Google フォームとkintoneを連携させる方法

    Webフォームで入力された回答を、直接kintoneのアプリに保存した…

  3. Google関連

    [Google Apps Script]insertTextBoxメソッドでスライドにテキストボック…

    昨年の9月にスライド上にテキストボックスを挿入するスクリプトについて記…

  4. Google関連

    [Google Apps Script]マクロの記録のショートカット情報の保存先

    Google スプレッドシートには、Web版ExcelのOffice …

  5. Google関連

    [Google Apps Script]スプレッドシートのセル範囲に指定した値が含まれているかを判定…

    先日、もり(@moripro3)さんから、「スプレッドシートの二次元配…

  6. Word

    GoogleとYahoo!で同時に翻訳するWordマクロ

    「Google翻訳で文字列を翻訳するマクロ」と「Yahoo!翻訳で文字…

コメント

  • コメント (0)

  • トラックバックは利用できません。

  1. この記事へのコメントはありません。

Time limit is exhausted. Please reload CAPTCHA.

※本ページはプロモーションが含まれています。

Translate

最近の記事

アーカイブ

PAGE TOP