GOOGLEANALYTICS
is a custom Google Spreadsheet function that tracks Spreadsheet views with the help of Google Apps Script. It includes the JSDoc @customfunction tag and thus the function will autocomplete when begin typing in a spreadsheet cell.
/**
* Track Spreadsheet views with Google Analytics
*
* @param {string} gaaccount Google Analytics Account like UA-1234-56.
* @param {string} spreadsheet Name of the Google Spreadsheet.
* @param {string} sheetname Name of individual Google Sheet.
* @return The 1x1 tracking GIF image
* @customfunction
*/
function GOOGLEANALYTICS(gaaccount, spreadsheet, sheetname) {
/**
* Written by Amit Agarwal
* Web: www.ctrlq.org
* Email: amit@labnol.org
*/
/* Random ID to prevent browser caching */
var cache_buster = Math.round(Date.now() / 1000).toString();
/* Client ID to anonymously define the device */
var client_id = Utilities.getUuid();
// Event Category set to Google Spreadsheets
var event_category = encodeURIComponent('Google Spreadsheets');
// Event Action set to spreadsheet title
var event_action = encodeURIComponent(spreadsheet || 'Spreadsheet');
// Event Label set to sheet title
var event_label = encodeURIComponent(sheetname || 'Sheet');
var imageURL = [
'https://ssl.google-analytics.com/collect?v=1&t=event',
'&tid=' + gaaccount,
'&cid=' + client_id,
'&z=' + cache_buster,
'&ec=' + event_category,
'&ea=' + event_action,
'&el=' + event_label,
].join('');
return imageURL;
}