2017-02-24 11 views
2

私がGoogleスプレッドシート(​​作者に感謝)にGoogleのPageSpeed Insightsの評価による指標を得るためにthis super-handy scriptを使用しています:特定の行番号(または最初の空の行)にデータを挿入する方法は?

var pageSpeedApiKey = 'AIzaSyDRgiUgu9Y3xVur0Xf0TdUmxgOYfltLFW4'; 
var pageSpeedMonitorUrl = 'http://www.sauder.ubc.ca'; 

function monitor() { 
    var mobile = callPageSpeed('mobile'); 
    var desktop = callPageSpeed('desktop'); 
    var spreadsheet = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheet = spreadsheet.getSheetByName('GooglePageSpeedInsightsData'); 
    sheet.appendRow([ 
        Utilities.formatDate(new Date(), 'GMT', 'yyyy-MM-dd'), 
        mobile.score, 
        desktop.score 
        ]); 

    // more available, i.e. desktop.pageStats.numberResources 
} 

function callPageSpeed(strategy) { 
    var pageSpeedUrl = 'https://www.googleapis.com/pagespeedonline/v1/runPagespeed?url=' + pageSpeedMonitorUrl + '&key=' + pageSpeedApiKey + '&strategy=' + strategy; 
    var response = UrlFetchApp.fetch(pageSpeedUrl); 
    var json = response.getContentText(); 
    return JSON.parse(json); 
} 

私は維持するために私のシートに行3の上に空白行を追加して別のスクリプトを使用しています新しいデータの逆順のすべてのデータが入ってきます。

の最後の行にを追加する代わりに、「行3」または「最初の空の行」に挿入する必要があります。

+0

PS - (特定の行番号)を元に推測することは簡単です/私はそれの意味を理解することができるので、おそらく私の方が良いでしょう。 – Drewdavid

答えて

3

あなたは3行目で新しい行を挿入し、3行目の範囲を取得し、値を設定することができます

sheet.insertRows(3, 1);//shift all rows down by one from row 3 

sheet.getRange(3,1,1,3)//(start row, start column, number of rows, number of columns 
    .setValues([[ 
       Utilities.formatDate(new Date(), 'GMT', 'yyyy-MM-dd'), 
       mobile.score, 
       desktop.score 
       ]]); 

Apps Script Documentation for insertRows()

関連する問題