はじまり
![135ml](https://www.endorphinbath.com/wp-content/uploads/2021/10/01_kinkinbeer135ml_001-2.jpg)
よっしゃあ、今回はGoogle DriveにあるフォルダをGoogle Spreadsheet上に取得する方法を紹介だあ!
![リサちゃん](https://www.endorphinbath.com/wp-content/uploads/2021/10/02_nayutarisa_001-1.png)
ほおほお、まあGoogleドライブでフォルダを管理するなら、地味に欲しいよね。
白米を食ってるときに欲しくなる沢庵くらいのポジションだよね。
![135ml](https://www.endorphinbath.com/wp-content/uploads/2021/10/01_kinkinbeer135ml_001-2.jpg)
そうだな・・・、必須ではないけど欲しいくらいのものだな。よし、行ってみよう!
![リサちゃん](https://www.endorphinbath.com/wp-content/uploads/2021/10/02_nayutarisa_001-1.png)
はあー、沢庵食いたくなってきたあ。買ってこよー。
ツールの紹介
今回のツールは、下記のシートの赤線で囲まれた部分になります。
![](https://www.endorphinbath.com/wp-content/uploads/2021/11/20211127_01-1-1024x448.jpg)
「getFolderListInFolder」ボタンを押すとスクリプトが走り、終了するとA3~C3セル以降の行に値が入ります。
- A列・・・ファイル名
- B列・・・ファイルのID
- C列・・・ファイルのURL
ちなみに、D列にあるHYPERLINK関数を別のセルに貼り付けると、セルにハイパーリンクが付いたフォルダ名が入力されます。
![](https://www.endorphinbath.com/wp-content/uploads/2021/11/20211127_02-1024x624.jpg)
ソートすれば、スクリプトを走らせる前のような順序になります。
![](https://www.endorphinbath.com/wp-content/uploads/2021/11/20211127_03-1024x768.jpg)
シートの造り
図形描画で作成した四角形を右クリックすると右上に三点リーダー(︙)が表示されるので、そこをクリックして「スクリプトを割り当て」をクリックすると・・・。
![](https://www.endorphinbath.com/wp-content/uploads/2021/11/20211127_04.jpg)
スクリプトを割り当てられるので、「getFolderListInFolder」を入力してOKします。
![](https://www.endorphinbath.com/wp-content/uploads/2021/11/20211127_05-1024x466.jpg)
スクリプトの紹介
以下が今回使用したスクリプトになります。
拡張機能から「Apps Script」を開いて、以下のスクリプトを打ち込んで先程のシートの設定をすると、使用できます。
i
で開始行を、column_for_fileList
で開始列を指定して、そこを基準に欲しいデータをシートに入力するようにしています。
コード.gs
function getFolderListInFolder() {
var folder = DriveApp.getRootFolder(),
sheetName = '【出力結果】フォルダのURL',
key = DriveApp.getRootFolder().getId(),
ss;
name = "",
i = 3, //フォルダを処理する行位置
column_for_fileList = 1; // A列のインデックス
ss = SpreadsheetApp.getActive();
sheet = ss.getSheetByName(sheetName);
var folders = DriveApp.searchFolders("'"+key+"' in parents");
while(folders.hasNext()) {
i++;
var folder = folders.next();
sheet.getRange(i, 0+column_for_fileList).setValue(name + folder.getName());
sheet.getRange(i, 1+column_for_fileList).setValue(folder.getId());
sheet.getRange(i, 2+column_for_fileList).setValue(folder.getUrl());
}
}
おしまい
![135ml](https://www.endorphinbath.com/wp-content/uploads/2021/10/01_kinkinbeer135ml_001-2.jpg)
よし、今回はこんなもんだな・・・!
・・・・・・
![135ml](https://www.endorphinbath.com/wp-content/uploads/2021/10/01_kinkinbeer135ml_001-2.jpg)
よし、今回はこんなもんだな・・・!
・・・・・・
![135ml](https://www.endorphinbath.com/wp-content/uploads/2021/10/01_kinkinbeer135ml_001-2.jpg)
あれ? まじで沢庵を買いに行ってるのか・・・。なかなか長いな・・・。
![リサちゃん](https://www.endorphinbath.com/wp-content/uploads/2021/10/02_nayutarisa_004.png)
はあはあ、ただい丸大豆醤油~!!
![135ml](https://www.endorphinbath.com/wp-content/uploads/2021/10/01_kinkinbeer135ml_001-2.jpg)
おかえリコーの複合機~。
丸大豆醤油じゃなくて、沢庵を買ってきたんじゃないの?
![リサちゃん](https://www.endorphinbath.com/wp-content/uploads/2021/10/02_nayutarisa_004.png)
ああ、この際だから沢庵を育てようと思って!! 大根買ってきた!!
![135ml](https://www.endorphinbath.com/wp-content/uploads/2021/10/01_kinkinbeer135ml_001-2.jpg)
すぐ食いたいんじゃなかったの?
![リサちゃん](https://www.endorphinbath.com/wp-content/uploads/2021/10/02_nayutarisa_001-1.png)
まあ、必須ではないけど欲しいくらいのものだからね。
![135ml](https://www.endorphinbath.com/wp-content/uploads/2021/10/01_kinkinbeer135ml_001-2.jpg)
あんなに即決で走ったんだよなあ・・・?
おまけ
![ペンギン](https://www.endorphinbath.com/wp-content/uploads/2021/10/03_penguinbeer135ml_001-1.jpg)
今回使ったシートの他の関数を紹介した記事は以下になります。よければ見てみて下さい!
以上になります!
コメント