[英]How to export a specific number of rows to text files in Google Sheets
我想將一列中的每 7 行導出到 Google 驅動器文件夾內的多個文本文件。
我已經想出了如何將單行導出到文本文件中,而不是將多行導出到一個文本文件中。
我有這個成功地將一行導出到一個文本文件:
function saveToTextfile() {
var ss = SpreadsheetApp.getActive();
var sheet = ss.getActiveSheet();
var range = sheet.getRange(1, 1, sheet.getLastRow(), sheet.getLastColumn());
var rows = range.getValues();
var folder = DriveApp.getFoldersByName("folderName").next();
var files = folder.getFiles();
while(files.hasNext()) files.next().setTrashed(true);
rows.forEach(function(row, index) {
folder.createFile("row" + index + ".txt", row.join(", "));
});
}
如何將一行到一個文本文件更改為七行到一個文本文件?
如果我的理解是正確的,這個修改怎么樣? 請將此視為幾個答案之一。
請按如下方式修改您的腳本。
從: rows.forEach(function(row, index) { folder.createFile("row" + index + ".txt", row.join(", ")); });
到:
var limit = 7; // In your case, the rows are used every 7 rows. var split = Math.ceil(rows.length / limit); for (var i = 0; i < split; i++) { var data = rows.splice(0, limit); var str = data.map(function(e) {return e.join(", ")}).join("\\n"); var filename = "row" + (i * limit + 1) + "-" + (data.length == limit ? (i + 1) * limit : (i + 1) * limit - (limit - data.length)) + ".txt"; folder.createFile(filename, str, MimeType.PLAIN_TEXT); }
row1-7.txt
、 row8-14.txt
和row15-20.txt
3 個文本文件。\\n
分割。如果我誤解了您的問題並且這不是您想要的結果,我深表歉意。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.