Yuki's bnb blog

こんにちは!Yukiといいます。本業のかたわら大阪で2016年夏から民泊運営のお手伝いをしています。民泊業務に関する様々なことを自動化・効率化したいと思い日々活動しています。 お気軽にコメント・お問い合わせください :) TOEICスコア 985

【コピペでOK!】GASで都道府県別フォルダー47個を一括作成する方法

f:id:yukibnb:20191003211557p:plain

こんにちは!
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です。

f:id:yukibnb:20191004102307p:plain
 
このフォルダーIDは後でGASを書く時に使用しますので、メモ帳か何かにメモしておいてください。

 

スプレッドシートを準備

次に都道府県別のフォルダー名47個をスプレッドシートに入力します。

スプレッドシートを使用せずにGAS内に直接フォルダー名を入力することもできますが、スプレッドシートを使用した方がわかりやすく汎用性もあるのでこの方法にします。

新しいスプレッドシートを作成

新しいスプレッドシートを作成してください。

このスプレッドシートはどこに作成してもOKです。「取引先」フォルダー内に作成する必要はありません。

ファイル名も何でもOKです。この記事では「都道府県_フォルダー一括作成」としました。

f:id:yukibnb:20191004103017p:plain
 

都道府県別のフォルダー名を入力

まずA1セルに「フォルダー名」と入力してください。

f:id:yukibnb:20191004103248p:plain
 
そしてA2~A48セルに都道府県を入力してください。
※A2~A48セルに入力した値が作成されるフォルダー名になります。

f:id:yukibnb:20191004103359p:plain
 
ちなみに僕はフォルダーを北から南に順番に並ばせたいので、フォルダー名を「北海道」とせずに「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には影響しません。

f:id:yukibnb:20191004105219p:plain

 
いよいよGASを書いていきましょう!

 

コピペでOK!GASを書こう

スクリプトエディタを開く

まずスプレッドシートの「ツール」→「スクリプトエディタ」をクリックし、GASを書くためのスクリプトエディタを開きましょう。

f:id:yukibnb:20191004105351p:plain

ここに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」を実行します。実行方法は色々ありますが、そのうちのひとつがこの再生ボタンです。クリックしてください。

f:id:yukibnb:20191004111232p:plain
 
ボタンをクリックすると「都道府県_フォルダー一括作成」スプレッドシート上に以下のような確認ポップアップが表示されます。
※初回実行時にはGoogleからスクリプトの承認を求められます。表示された指示にしたがって承認してください。

f:id:yukibnb:20191004112513p:plain
 
間違えてGASを実行してしまった場合、「キャンセル」をクリックすればGASがストップしフォルダーは作成されませんので安心してください。

「OK」をクリックすると都道府県別フォルダーを作成します。

少し待つと「都道府県_フォルダー一括作成」スプレッドシート上に作成完了のお知らせが表示されます。

f:id:yukibnb:20191004111726p:plain
 
 
本当に都道府県別フォルダーが47個作成されているか、「取引先」フォルダーを確認してみましょう。

f:id:yukibnb:20191004111841p:plain
 
 
無事作成できましたね!

 

まとめ

今回はGASで都道府県別にフォルダーを47個一括作成する方法を紹介しました。

手作業で複数のフォルダーを作成するのは本当に手間なので、このスクリプトがお役に立てればうれしいです!