You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

编写Google Apps Script实现每次运行时将指定单元格值追加至新行

解决Google Sheets脚本提取数据并逐行追加的问题

需求说明

从「IN-HOUSE CHELSEA WORKSHOP」工作表的S1单元格提取数据,每次运行脚本(或触发器触发)时,将数据追加到「Sheet8」的A列新行,按运行次数生成值列表。

现有脚本分析

你提供的脚本逻辑方向正确,但存在一处冗余写法:sheet2.getRange(1,1).getLastRow() 无需先指定单元格范围,直接调用工作表的getLastRow()方法即可高效获取最后一行位置。

优化后的脚本

function chelsearepairlog2(){
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const sheet1 = ss.getSheetByName("IN-HOUSE CHELSEA WORKSHOP");
  const sheet2 = ss.getSheetByName("Sheet8");
  
  // 获取S1单元格的当前值
  const currentrepairs = sheet1.getRange("S1").getValue();
  // 获取Sheet8中A列的最后一行行号
  const lastRow = sheet2.getLastRow();
  
  // 将值追加到A列的下一行
  sheet2.getRange(lastRow + 1, 1).setValue(currentrepairs);
}

补充说明

  • 若S1单元格是公式计算结果,getValue()会直接提取最终计算值,完全满足需求
  • 触发器配置:可在Google Sheets的「扩展程序」→「Apps脚本」→「触发器」中添加时间驱动触发器(如定时运行)或事件触发触发器(如打开工作表时运行),实现自动追加
  • 若后续需要批量提取多行数据,可将getRange("S1")改为getRange("S1:S[行数]"),并用getValues()批量读取后,通过setValues()一次性写入,提升脚本效率

内容的提问来源于stack exchange,提问作者FPWM123

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 22:42:08