Google apps script 单个单元格中的数字总和,但是否保持格式?

Google apps script 单个单元格中的数字总和,但是否保持格式?,google-apps-script,google-sheets-formula,Google Apps Script,Google Sheets Formula,我有一个谷歌工作表,我用某种格式记录一天中不同的数据。我每周每天都有专栏。我不想在我跟踪这些数据的剩余时间里,担心把每天的数据都加起来。是否有代码来实现这一点?格式如下 Monday Tuesday etc. X/X/X X/X/X 我想把所有这些数字加起来,但保留X/X/X的格式。这可能吗?任何帮助都将不胜感激,我一点也不知道如何做到这一点,谢谢 function sumofsplits() { const ss=SpreadsheetApp.getActive(

我有一个谷歌工作表,我用某种格式记录一天中不同的数据。我每周每天都有专栏。我不想在我跟踪这些数据的剩余时间里,担心把每天的数据都加起来。是否有代码来实现这一点?格式如下

   Monday  Tuesday   etc.
   X/X/X    X/X/X
我想把所有这些数字加起来,但保留X/X/X的格式。这可能吗?任何帮助都将不胜感激,我一点也不知道如何做到这一点,谢谢

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");
}

嗨库珀谢谢你的回答,但是你能给我更多的信息吗?我把代码放在哪里?我需要用单元格位置替换这里的任何内容吗?哪个单元格有逗号分隔的值?单元格B23:H23有值。这似乎不在你的问题中好的,我现在在这个范围内求和