在這個
uj5u.com熱心網友回復:
在您的情況下,如何創建一個包含每個頁面的新 Google 電子表格?當這反映在示例腳本中時,它變成如下。
示例腳本:
function myFunction() {
const srcSs = SpreadsheetApp.getActiveSpreadsheet();
const sheet = srcSs.getSheetByName("TEMPLATE");
const values = sheet.getRange("C2").getDataValidation().getCriteriaValues()[0].getValues().flat().filter(String);
const dstSs = SpreadsheetApp.create("tempSpreadsheet");
values.forEach(v => {
sheet.getRange("C2").setValue(v);
SpreadsheetApp.flush();
const tempSheet = sheet.copyTo(srcSs);
const range = tempSheet.getDataRange();
range.copyTo(range, {contentsOnly: true});
tempSheet.getRange("B2:2").clear().clearDataValidations();
tempSheet.getDrawings().forEach(e => e.remove());
tempSheet.copyTo(dstSs);
srcSs.deleteSheet(tempSheet);
});
dstSs.deleteSheet(dstSs.getSheets()[0]);
}
- 運行此腳本時,
tempSpreadsheet會在根檔案夾中創建一個新的 Google 電子表格。當您看到它時,每個選項卡都有每個作業表,而沒有使用公式。這樣,您可以通過一個手動程序列印出電子表格。
筆記:
- 當我看到您的示例電子表格時,
/** @OnlyCurrentDoc */您的腳本中使用了它。當您使用我建議的腳本時,請洗掉/** @OnlyCurrentDoc */. 這樣,范圍https://www.googleapis.com/auth/spreadsheets就會自動檢測并使用它。請注意這一點。 - 此示例腳本適用于您的示例電子表格。因此,當電子表格更改時,此腳本可能無法使用。請注意這一點。
參考:
- 創建(名稱)
- 類表的復制到(電子表格)
- copyTo(destination) 類范圍
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/336707.html
