【问题标题】:Google Apps Script: How to find column number of specific value in array?Google Apps 脚本:如何在数组中查找特定值的列号?
【发布时间】:2021-11-22 08:08:34
【问题描述】:

我想要实现的是获取特定单元格的列号。 如果数组中的单元格值等于今天日期的值,则返回该单元格的列号。

dateArrayD = 1 行包含从 1 月 1 日到 12 月 31 日的所有日期,已格式化

dateTodayD = 今天的日期,格式化

因此,如果 dateTodayD 等于 dateArrayD,则 dateCol 将是列号。我根本找不到解决方案。

for(var z = 0; z < dateArrayD.length; z++){
    if(dateTodayD !== dateArrayD[0][z]){
      var dateCol = z;
    } // end if
  } // for end

【问题讨论】:

  • 您尝试在 for 循环中使用 dateArrayD[0].length 而不是 dateArrayD.length

标签: javascript for-loop if-statement google-apps-script


【解决方案1】:

此函数为每个单元格添加换行符和行、列。

function calcRowColumn() {
  const ss = SpreadsheetApp.getActive();
  const sh = ss.getSheetByName('Sheet0');
  const sr = 4;//data start row
  const sc = 4;//data start column
  const rg = sh.getRange(sr,sc,sh.getLastRow() - sr + 1, sh.getLastColumn() - sc + 1);
  const vs = rg.getDisplayValues();
  vs.forEach((r,i) => {
    let row = i + sr;
    r.forEach((c,j) => {
      let col = j + sc;
      vs[i][j] += `\n${row},${col}`;
      
    })
  })
  rg.setValues(vs);
}

起始数据:

结束数据:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-20
    相关资源
    最近更新 更多