Skip to content

Instantly share code, notes, and snippets.

@IronistM
Created April 8, 2015 21:05
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save IronistM/8be09ebd4c5a4a58c63b to your computer and use it in GitHub Desktop.
Save IronistM/8be09ebd4c5a4a58c63b to your computer and use it in GitHub Desktop.
Google Sheet as JSON
// Credit Christian Boutin
function exportSheetAsJSON() {
var sheet = SpreadsheetApp.getActiveSheet();
var rows = sheet.getDataRange();
var numRows = rows.getNumRows();
var numCols = rows.getNumColumns();
var values = rows.getValues();
var output = "";
output += "{\""+sheet.getName()+"\" : {\n";
var header = values[0];
for (var i = 1; i < numRows; i++) {
if (i > 1) output += " , \n";
var row = values[i];
output += "\""+row[0]+"\" : {";
for (var a = 1;a<numCols;a++){
if (a > 1) output += " , ";
output += "\""+header[a]+"\" : \""+row[a]+"\"";
}
output += "}";
//Logger.log(row);
}
output += "\n}}";
Logger.log(output);
DriveApp.createFile(sheet.getName()+".json", output, MimeType.PLAIN_TEXT);
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment