見出し画像

【Google Apps Script(GAS)】大量のCSVファイルを1シートにまとめる方法【業務効率化】

Googleアプリ操作の自動化が簡単にできるGoogle Apps Script(GAS)
これを抑えておけば業務効率がグッとアップします🙆‍♀️

今回は大量のCSVファイルを1シートにまとめる方法を解説しました!
是非これを機会にGAS習得しちゃいましょう~~!

◎動画はこちら

◎スクリプト

function myFunction() {

 var parentFolder = DriveApp.getFolderById("★CSVが格納されてるフォルダIDを記載");
 var files = parentFolder.getFiles();
 
 var outputFolderID = "★スプシを格納するフォルダIDを記載";
 
 var values = [];
 
 //各ファイルに対して繰り返し処理
 while(files.hasNext()){
   
   //ファイルを取得
   var file = files.next();
   var name = file.getName();
   
   //スプシ変換するためのオプションを宣言
   var option = {
     title:name,
     mimeType:MimeType.GOOGLE_SHEETS,
     parents:[{id:outputFolderID}]
   }
   
   //CSV→スプシに変換してファイル生成
   var newFile = Drive.Files.insert(option,file);
   var id = newFile.getId();
   
   //スプシからデータを取得
   var ss = SpreadsheetApp.openById(id);
   var sheet = ss.getActiveSheet();
   var rows = sheet.getLastRow()-1;
   var columns = sheet.getLastColumn();
   var datas = sheet.getRange(2,1,rows,columns).getValues();
   
   //データを二次元配列に変換
   datas.forEach(function(data){
     values.push(data);
   });
   
 }
 
 //結果を集約スプシに記載
 var outputSS = SpreadsheetApp.getActiveSpreadsheet();
 var outputSheet = outputSS.getActiveSheet();
 outputSheet.getRange(2,1,values.length,values[0].length).setValues(values);
 
}

GASの基礎学習にはUdemyがおすすめです!(徹底解説してます!)



この記事が気に入ったらサポートをしてみませんか?