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

时间:2019-02-20 23:56:28

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

我有一个名为“指标”的工作表,每天有一行,例如:

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。

我想用添加新行和相应的count1,count2,counts3的那些值来填充“指标”表。

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

1 个答案:

答案 0 :(得分: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

  • 复制粘贴脚本

  • 以某个名称保存项目

  • 单击运行图标并对其进行授权...

  • 选择您的帐户

  • 点击高级

  • 选择转到*(不安全)

  • 单击允许并返回到工作表(您可以关闭脚本窗口/选项卡)