2017-02-24 58 views
2

我使用this super-handy script獲得谷歌PageSpeed Insights的指標爲谷歌電子表格(感謝作者):如何將數據插入特定的行號(或第一個空行)?

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()

相關問題