2017-06-09 12 views
-2

Googleドライブに、毎日新しい.csvファイルを自動的に受信するフォルダがあります。私の目標は、フォルダ内の最近アップロードされた.csvファイルを選択し、特定のワークシートに挿入することです(これまでのものを上書きしてGoogleシートに入れます)。.csvファイルを特定のワークシートに毎日挿入するにはどうすればよいですか?

+0

この問題のスクリプトを書きましたか?もしそうなら、あなたはそれを共有することができますか?シートはどのように見えますか? – Cooper

+0

必要なファイルを確認するには、フォルダにアクセスして[getDateCreated()](https://developers.google.com/apps-script/reference/drive/file#getDateCreated())をチェックする必要があります選択します。次に、[SpreadsheetApp](https://developers.google.com/apps-script/reference/spreadsheet/spreadsheet-app)を使用してファイルを読み込み、ファイルに書き込むか(または、ビルドインのImportRange関数を使用して)スクリプトを起動するための[time trigger](https://developers.google.com/apps-script/guides/triggers/installable) – Casper

+0

まだスクリプトを書き込もうとしていません。このシートは単に3種類のワークシートで構成されており、csvのデータは毎日「Raw Data」というワークシートのデータを上書きしたいと考えています。 – cparbrlaj

答えて

0

時間ベースのトリガーは、編集/現在のプロジェクトトリガーから作成します。これは、毎日実行する必要があります(GMTは18時00分です)。ロードCSVを指示します。

function loadingCSV() { 
    var ss=SpreadsheetApp.openById("spreadsheetID"); 
    var sht=ss..getSheetByName("sheet name"); 
    sht.clearContents(); 
    var data = loadFile('my.csv','folderID') 
    var dataA =Utilities.parseCsv(data); 
    var rng = sht.getRange(1, 1, dataA.length, dataA[0].length) 
    rng.setValues(dataA); 
} 

function loadFile(filename,folderID) 
{ 
    var fldr = DriveApp.getFolderById('folderID'); 
    var file = fldr.getFilesByName(filename); 
    var s = ''; 
    while(file.hasNext()) 
    { 
    var fi = file.next(); 
    var target = fi.getName(); 
    if(target == filename) 
    { 
     s = fi.getBlob().getDataAsString(); 
    } 
    } 
    return s; 
} 
関連する問題