我必須將 4 個唯一日期轉換為另一張表中的 4 列。另一張表只有兩列,需要再添加 2 列以適應使用insertColumns.
如何僅使用 Google Apps 腳本來實作這一點,其中腳本檢查作業表是否有足夠的列,如果沒有則相應地插入它們?

function unique() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Sheet1");
var lrow = sheet.getLastRow();
var range = sheet.getRange(2, 1, lrow-1, 1).getValues();
var unique = [...new Set(range)]
Logger.log(unique.length); // Not returning unique length - 7.0
}
uj5u.com熱心網友回復:
唯一日期
function unique() {
var ss = SpreadsheetApp.getActive();
var sh = ss.getSheetByName("Sheet0");
var vs = sh.getRange(2, 1, sh.getLastRow() - 1).getValues().flat().map(d => d.valueOf());
var uvs = [...new Set(vs)].map(v => new Date(v));
if(sh.getMaxColumns() < uvs.length) {
sh.insertColumnsAfter(sh.getLastColumn(), uvs.length - sh.getLastColumn() - 1)
}
sh.clearContents();
sh.getRange(2,1,1,uvs.length).setValues([uvs]);
}
前:
| 日期 |
|---|
| 2022 年 1 月 1 日 |
| 2022 年 1 月 2 日 |
| 2022 年 1 月 3 日 |
| 2022 年 1 月 4 日 |
| 2022 年 1 月 4 日 |
| 2022 年 1 月 4 日 |
| 2022 年 1 月 4 日 |
| 2022 年 1 月 4 日 |
| 2022 年 1 月 4 日 |
| 2022 年 1 月 4 日 |
后:
| 2022 年 1 月 1 日 | 2022 年 1 月 2 日 | 2022 年 1 月 3 日 | 2022 年 1 月 4 日 |
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/463291.html
