![](/img/trans.png)
[英]Get Google Sheets script to repeat the process until a certain value is reached
[英]display value if reached a certain numbers using google script
我有一個帶有日期列的google工作表,並且如果我的列中的值達到4次(例如2019年7月1日),則無法顯示或將值設置為一個單元格
Date Column
Row1: July 1, 2019
Row2: July 2, 2019
Row3: July 1, 2019
Row4: July 4, 2019
Row5: July 1, 2019
Row6: July 1, 2019
Row7: July 5, 2019
我已經在Google腳本中嘗試了以下代碼:
function countDate(){
var ss = SpreadsheetApp.openByUrl(url);
var ws = ss.getSheetByName("Test_Data");
var dateRg = ws.getRange(1, 9, ws.getLastRow(), 1).getValues();
for (var i =1; i < dateRg.length; i++){
var dateTest = dateRg[i];
if (dateTest > 5){
ws.getRange(2,4).setValue(dateTest);
}
}
在上面的示例中,我希望在電子表格中具有一個單元格,使其值“ 2019年7月1日”,因為該值在列中出現了4次。 先感謝您。
這是一種可能的方法。 計算每個日期的出現次數,將計數存儲在對象中,然后找到出現次數最多的日期。
function countDate(){
var ss = SpreadsheetApp.openByUrl(url);
var ws = ss.getSheetByName("Test_Data");
var dateRg = ws.getRange(1, 1, ws.getLastRow(), 1).getDisplayValues();
var data = {}
for (var i =0; i < dateRg.length; i++){
data[dateRg[i]] = data[dateRg[i]] || 0;
data[dateRg[i]]++;
}
var max = Object.keys(data).reduce(function(a, b){ return data[a] > data[b] ? a : b });
ws.getRange(2,4).setValue(max);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.