【问题标题】:Google Spreadsheets columns export to CSVGoogle 电子表格列导出为 CSV
【发布时间】:2014-11-26 13:42:18
【问题描述】:
我想从 Google 电子表格自动创建 csv 文件(点击按钮后)。
但我不想导出整个电子表格,而只想导出几列。
我该怎么做?
例如。电子表格有 8 列,我想将前三列导出到 csv,其值如下:“column1 值;column2 值;column3 值;column1 值;column2 值;...”
谢谢
【问题讨论】:
标签:
javascript
csv
google-apps-script
google-sheets
export-to-csv
【解决方案1】:
你去:(如果你想让它工作,你需要发布它)它会导出你正在做的选择
function onOpen() {
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var entries = [{
name : "make CSV",
functionName : "myFunction"
}];
spreadsheet.addMenu("Script Center Menu", entries);
};
function myFunction() {
var a1 = SpreadsheetApp.getActiveRange().getA1Notation();
var url = ScriptApp.getService().getUrl()+"?ref="+a1+"&sheet="+SpreadsheetApp.getActiveSheet().getName()+"&ssid="+SpreadsheetApp.getActive().getId();
var vals = SpreadsheetApp.getActiveRange().getValues();
var html = "here the download Link <a href='"+url+"' >"+url+"</a>";
//SpreadsheetApp.getActive().show(HtmlService.createHtmlOutput(html)); // ol sheet style
SpreadsheetApp.getUi().showModalDialog(HtmlService.createHtmlOutput(html), 'download box'); // new sheet style
}
function doGet(e){
var ref = e.parameter.ref;
var sheet = e.parameter.sheet;
var ssid = e.parameter.ssid;
var out = ContentService.createTextOutput(SpreadsheetApp.openById(ssid).getSheetByName(sheet).getRange(ref).getValues().join("\n")).downloadAsFile("out.csv");
return out;
}