ответ

1

Мы опубликовали a tutorial, который демонстрирует, как импортировать CSV в электронную таблицу.

+1

В этом учебнике используется DocsList, который устарел и больше не работает. – marcp

+0

Ссылка имеет '404. Это ошибка. –

5

Это похоже на неправильный ответ с DocList, но вместо использования DocsList вы можете получить данные непосредственно из блоба, проанализировать его и затем импортировать в электронную таблицу. Я только кратко расскажу:

function doGet(e) { 
    var app = UiApp.createApplication().setTitle("Upload CSV to Sheet"); 
    var formContent = app.createVerticalPanel(); 
    formContent.add(app.createFileUpload().setName('thefile')); 
    formContent.add(app.createSubmitButton('Start Upload')); 
    var form = app.createFormPanel(); 
    form.add(formContent); 
    app.add(form); 
// return app; 
    SpreadsheetApp.getActiveSpreadsheet().show(app);// show app 
} 

function doPost(e) { 
    // data returned is a blob for FileUpload widget 
    var fileBlob = e.parameter.thefile; 

    // parse the data to fill values, a two dimensional array of rows 
    // Assuming newlines separate rows and commas separate columns, then: 
    var values = [] 
    var rows = fileBlob.contents.split('\n'); 
    for(var r=0, max_r=rows.length; r<max_r; ++r) 
    values.push(rows[r].split(',')); // rows must have the same number of columns 

    // Using active sheet here, but you can pull up a sheet in several other ways as well 
    SpreadsheetApp.getActiveSheet() 
       .getRange(1, 1, values.length, values[0].length) 
       .setValues(values); 
}