function scorekeeper(){
var sheet1 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("sheet1");
var sheet2 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("sheet2");
var score = sheet1.getRange("C1").getValue(); // we want to store this
var row = sheet2.getRange("C1").getValue(); // this is our row
sheet2.getRange(row, 2).setValue(score );
}
2 回答
您需要一个脚本将条目从sheet1!C1复制到sheet2!columnB行(其中columnA = today()) .
将sheet1,sheet2替换为您的工作表名称 .
设置电子表格
在您的电子表格中转到
文件>电子表格设置
设置本地和时区,然后设置重新计算onChange和每小时 .
使用内置函数来查找今天的行
转到sheet2!
我假设你的columnA具有从日期格式的A1到A#的日期 . 我们需要一个单元格来保存一个值,我选择C1 . 在C1中放这个
= MATCH(今日()中,A:A)
这会给你一个数字,它应该是今天的日期 .
构建脚本
然后转到
工具>脚本编辑器
为电子表格创建脚本 . 这将为您提供一些示例脚本,删除它 .
代码是
您可以通过转到Run并选择函数名来测试它 . 您可能必须先保存脚本并授予应用程序权限 .
设置触发器
让我们在午夜运行
去
资源>当前项目的触发器 .
添加触发器 .
选择;记分员()时间驱动的日间计时器午夜到凌晨1点 .
你很高兴 .
如果您对Google Apps脚本不满意,可以使用Google Sheet附加Sheetgo的附加功能(https://www.sheetgo.com/append-google-sheets/) . 要配置:
安装Sheetgo
打开加载项(加载项 - >开始 - > Sheetgo)
Mousover导入连接的按钮和向下箭头
选择连接类型'Append'
从该电子表格中选择源电子表格和源选项卡
选择频率(在您的情况下是每天)
点击'Connect'
添加将使用源表中的数据创建一个新工作表,并每天自动附加一个新记录 .
*免责声明 - 我是Sheetgo的联合创始人