如何使用新Google电子表格的数据填充特定工作表中的单元格

问题描述 投票:1回答:1

我有一张名为“metrics”的表,每天有一行,例如:

day           counts1  counts2  counts3
01-01-2019
01-02-2019
01-03-2019
01-04-2019
01-05-2019
...

每天我都会创建一个与日期相同的新工作表。例如,在01-06-2019中,我创建了一个名为“01-06-2019”的工作表并在其中输入数据。使用这个每日数据,我计算每天计数1,计数2和计数3。

我想用这些值填充表单“metrics”,添加一个新行和相应的counts1,counts2,counts3。

或者,它是另一种更好的方法来保存数据并实现这一目标吗?

google-apps-script google-sheets google-sheets-formula
1个回答
1
投票

粘贴在B2单元格中并向下拖动小蓝方块

={SUM(    INDIRECT(TO_TEXT(A2)&"!B2:C2")),
  AVERAGE(INDIRECT(TO_TEXT(A2)&"!C2:C")),
  SUM(    INDIRECT(TO_TEXT(A2)&"!B2:B"))}

要创建工作表/选项卡,您可以使用此脚本:

function onOpen() {
    SpreadsheetApp.getUi().createMenu('NEW DAY')
        .addItem('Create New Tabs', 'createTabs')
        .addToUi()
}

function createTabs() {
    var ss = SpreadsheetApp.getActive()
    ss.getSheetByName('metrics').getRange('A2:A').getValues().filter(String)
        .forEach(function (sn) {
            if (!ss.getSheetByName(sn[0])) {
                ss.insertSheet(sn[0], ss.getSheets().length);
            }
        })
}
  • 添加此脚本
  • 使用F5重新加载电子表格
  • 选择A列
  • 点击123按钮
  • 并选择Plain text
  • 在A列中添加新日期
  • 然后点击NEW DAY
  • 选择“创建新选项卡”

这将通过跳过已创建的选项卡/工作表并跳过空单元格,从A列中的日期列表自动创建新选项卡


为避免每次输入日期,请​​在A2单元格中使用此公式并向下拖动:

=TO_TEXT(TEXT(DATE(2019, 1, 1)+ROW()-2, "MM-dd-yyyy"))

如何将脚本添加到电子表格中

  • 转到工具
  • 选择脚本编辑器 0
  • 复制粘贴脚本
  • 以某个名称保存项目
  • 点击运行图标并授权它...
  • 选择您的帐户
  • 单击“高级”
  • 选择转到*(不安全)
  • 单击“允许”并返回到工作表(可以关闭脚本窗口/选项卡)
© www.soinside.com 2019 - 2024. All rights reserved.