【问题标题】:Sum of numbers in a single cell, but keep format?单个单元格中的数字总和,但保持格式?
【发布时间】:2021-01-04 18:51:45
【问题描述】:

我有一个 Google 表格,我在其中使用某种格式全天跟踪不同的数据。我每周都有一个专栏。在我跟踪这些数据的其余时间里,我不想担心每天都加起来。有没有代码来完成这个?格式如下。

   Monday  Tuesday   etc.
   X/X/X    X/X/X

我想将所有这些数字相加,但保持 X/X/X 的格式。这可能吗?任何帮助将不胜感激,我对如何完成这一点一无所知,谢谢!

【问题讨论】:

    标签: google-apps-script google-sheets-formula


    【解决方案1】:
    function sumofsplits() {
      const ss=SpreadsheetApp.getActive();
      const sh=ss.getActiveSheet();
      const rg=sh.getRange("B23:H23");
      const vs=rg.getValues()[0];
      let sum=0;
      vs.forEach(e=>sum+=e.split(',').reduce((a,c)=>{a+=Number(c);return a;},0));
      let o='The sum is ' + sum;
      SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(o),"Sum of Splits");
    }
    

    您可以在二维范围内使用以下函数:

    function sumofsplits() {
      const ss=SpreadsheetApp.getActive();
      const sh=ss.getActiveSheet();
      const sr=23;//start row
      const rg=sh.getRange(sr,2,sh.getLastRow()-sr+1,7);
      const vs=rg.getValues();
      let sum=0;
      vs.forEach(r=>r.forEach(e=>sum+=e.split(',').reduce((a,c)=>{a+=Number(c);return a;},0)));
      let o='The sum is ' + sum;
      SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(o),"Sum of Splits");
    }
    

    【讨论】:

    • 嗨 Cooper,谢谢你的回答,但你能给我更多的信息吗?我把这段代码放在哪里?我需要用单元格位置替换此处的任何内容吗?
    • 那么哪个单元格有逗号分隔值?
    • 单元格 B23:H23 具有值。
    • 这似乎不在你的问题中
    • 好的,我现在总结了这个范围
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-11
    • 1970-01-01
    • 1970-01-01
    • 2018-03-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多