こんにちは!
Yuki (@yukibnb) です。
Google Driveで複数のフォルダーを手作業で作成するのって面倒ですよね。
例えば「取引先」というフォルダー内に「東京都」「神奈川県」「大阪府」....など47都道府県のフォルダーを作成したい場合、手作業だとかなり面倒ですし時間もかかります。
GAS (Google Apps Script) を使えば手間なく数十個(それ以上でも!)のフォルダーを一括作成できます。
この記事では都道府県別に47個のフォルダーを一括作成するGASのスクリプトを紹介します。
コピペで簡単に使用できますので是非お試しください。
保存先のフォルダーIDを確認
まず保存先のフォルダーIDを確認しましょう。
例えば「○○株式会社」>「営業」>「取引先」というフォルダー階層があり、「取引先」フォルダー内に都道府県別フォルダーを作成したい場合、「取引先」フォルダーのフォルダーIDを確認します。
確認方法は簡単です。
保存先のフォルダーを開きアドレスバーを見てください。
アドレスバーには「https://drive.google.com/drive/folders/...........」もしくは「drive.google.com/drive/folders/...........」と表示されているはずです。
その「...........」の部分がフォルダーIDです。
このフォルダーIDは後でGASを書く時に使用しますので、メモ帳か何かにメモしておいてください。
スプレッドシートを準備
次に都道府県別のフォルダー名47個をスプレッドシートに入力します。
スプレッドシートを使用せずにGAS内に直接フォルダー名を入力することもできますが、スプレッドシートを使用した方がわかりやすく汎用性もあるのでこの方法にします。
新しいスプレッドシートを作成
新しいスプレッドシートを作成してください。
このスプレッドシートはどこに作成してもOKです。「取引先」フォルダー内に作成する必要はありません。
ファイル名も何でもOKです。この記事では「都道府県_フォルダー一括作成」としました。
都道府県別のフォルダー名を入力
まずA1セルに「フォルダー名」と入力してください。
そしてA2~A48セルに都道府県を入力してください。
※A2~A48セルに入力した値が作成されるフォルダー名になります。
ちなみに僕はフォルダーを北から南に順番に並ばせたいので、フォルダー名を「北海道」とせずに「01_北海道」というように都道府県番号を頭に付けました。
フォルダー名はみなさんのお好みで調整ください。
なおフォルダー名をスプレッドシートにひとつひとつ入力するのは面倒なので以下からコピペください。
番号あり | 番号なし |
---|---|
01_北海道 | 北海道 |
02_青森県 | 青森県 |
03_岩手県 | 岩手県 |
04_宮城県 | 宮城県 |
05_秋田県 | 秋田県 |
06_山形県 | 山形県 |
07_福島県 | 福島県 |
08_茨城県 | 茨城県 |
09_栃木県 | 栃木県 |
10_群馬県 | 群馬県 |
11_埼玉県 | 埼玉県 |
12_千葉県 | 千葉県 |
13_東京都 | 東京都 |
14_神奈川県 | 神奈川県 |
15_新潟県 | 新潟県 |
16_富山県 | 富山県 |
17_石川県 | 石川県 |
18_福井県 | 福井県 |
19_山梨県 | 山梨県 |
20_長野県 | 長野県 |
21_岐阜県 | 岐阜県 |
22_静岡県 | 静岡県 |
23_愛知県 | 愛知県 |
24_三重県 | 三重県 |
25_滋賀県 | 滋賀県 |
26_京都府 | 京都府 |
27_大阪府 | 大阪府 |
28_兵庫県 | 兵庫県 |
29_奈良県 | 奈良県 |
30_和歌山県 | 和歌山県 |
31_鳥取県 | 鳥取県 |
32_島根県 | 島根県 |
33_岡山県 | 岡山県 |
34_広島県 | 広島県 |
35_山口県 | 山口県 |
36_徳島県 | 徳島県 |
37_香川県 | 香川県 |
38_愛媛県 | 愛媛県 |
39_高知県 | 高知県 |
40_福岡県 | 福岡県 |
41_佐賀県 | 佐賀県 |
42_長崎県 | 長崎県 |
43_熊本県 | 熊本県 |
44_大分県 | 大分県 |
45_宮崎県 | 宮崎県 |
46_鹿児島県 | 鹿児島県 |
47_沖縄県 | 沖縄県 |
A2~A48セルにフォルダー名の記入が完了すると下準備は完了です。
補足ですがセルに色を付けたり罫線を引いたりして見やすくして頂いてもOKです。GASには影響しません。
いよいよGASを書いていきましょう!
コピペでOK!GASを書こう
スクリプトエディタを開く
まずスプレッドシートの「ツール」→「スクリプトエディタ」をクリックし、GASを書くためのスクリプトエディタを開きましょう。
ここにGASを書いていきます。
GASをコピペ
スクリプトエディタに以下をまるごとコピペしてください。
function createFolders() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sh = ss.getActiveSheet(); var folderID = "ここに保存先フォルダーIDを入力"; var folder = DriveApp.getFolderById(folderID); var folderUrl = folder.getUrl(); var folderName = folder.getName(); //間違えてスクリプトを実行した場合、Cancelをクリックすると動作が終了する。 var confirmation = Browser.msgBox("フォルダーの作成","本当に「" + folderName + "」内にフォルダーを作成しますか?", Browser.Buttons.OK_CANCEL); if(confirmation == "cancel") { Browser.msgBox("操作をキャンセルしました"); return; } //最終行の番号を取得する。 var lastRow = sh.getLastRow(); //A2~A最終行まで入力された各都道府県のフォルダー名を配列に格納する。 var folderNamesToCreate = sh.getRange(2,1,lastRow-1,1).getValues(); //指定したフォルダー内に各都道府県のフォルダーを作成する。 for (var i = 0; i < folderNamesToCreate.length; i++){ folder.createFolder(folderNamesToCreate[i]); } //作成完了メッセージを表示する。 Browser.msgBox("「" + folderName + "」内にフォルダーを作成しました。"); }
コピペしたら次はスクリプト内の「var folderID = "ここに保存先フォルダーIDを入力";」を編集します。
本記事冒頭でメモをしたフォルダーIDを"ここに保存先フォルダーIDを入力"に入力します。
なおダブルクオーテーション「"」は消さずにそのままにしてください。
たとえば保存先フォルダーIDが「aabbccddeeeeffffggg」の場合、「var folderID = "aabbccddeeeeffffggg";」と入力してください。
これで準備完了です。早速実行しましょう!
GASを実行
ではいよいよGASを実行して都道府県別フォルダーを一括作成しましょう。
先程作成したGAS「createFolders」を実行します。実行方法は色々ありますが、そのうちのひとつがこの再生ボタンです。クリックしてください。
ボタンをクリックすると「都道府県_フォルダー一括作成」スプレッドシート上に以下のような確認ポップアップが表示されます。
※初回実行時にはGoogleからスクリプトの承認を求められます。表示された指示にしたがって承認してください。
間違えてGASを実行してしまった場合、「キャンセル」をクリックすればGASがストップしフォルダーは作成されませんので安心してください。
「OK」をクリックすると都道府県別フォルダーを作成します。
少し待つと「都道府県_フォルダー一括作成」スプレッドシート上に作成完了のお知らせが表示されます。
本当に都道府県別フォルダーが47個作成されているか、「取引先」フォルダーを確認してみましょう。
無事作成できましたね!
まとめ
今回はGASで都道府県別にフォルダーを47個一括作成する方法を紹介しました。
手作業で複数のフォルダーを作成するのは本当に手間なので、このスクリプトがお役に立てればうれしいです!