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

如何修改Google Sheets脚本实现触发时发送整行数据及对应工作表名到Telegram

修改后完整脚本

const token = "你的Telegram机器人Token";
const chatId = "你的目标群组ChatId";
const startRow = 2; // 触发推送的起始行
const targetColumn = 2; // 触发列,第2列输入触发词执行推送
const triggerWord = "Yanson"; // 触发词

function onEdit(e) {
  sendTelegram(e);
}

function sendTelegram(e) {
  // 基础参数校验,避免无编辑事件对象时报错
  if (!e) return;
  const range = e.range;
  const row = range.getRow();
  const col = range.getColumn();
  const activeSheet = e.source.getActiveSheet();
  const sheetName = activeSheet.getName();

  // 校验是否符合触发条件:第2列、行号≥起始行、输入内容为触发词
  if (col !== targetColumn || row < startRow || range.getValue() !== triggerWord) return;

  // 获取当前行所有有内容的单元格数据
  const lastCol = activeSheet.getLastColumn();
  const rowValues = activeSheet.getRange(row, 1, 1, lastCol).getValues()[0];
  // 格式化行内容,按列拼接
  let contentText = "";
  rowValues.forEach((val, index) => {
    // 可根据自身表格的列字段自定义替换列名,比如列1改为「序号」、列3改为「提交日期」
    contentText += `列${index+1}:${val ? val : "空"}\n`;
  });

  // 拼接最终发送的消息
  const sendContent = `🔔 新增文档提醒
工作表名称:${sheetName}
触发行号:${row}
行内容详情:
${contentText}`;

  // 调用Telegram接口发送消息
  const url = `https://api.telegram.org/bot${token}/sendMessage?chat_id=${chatId}&text=${encodeURIComponent(sendContent)}`;
  UrlFetchApp.fetch(url);

  // 原注释的日期写入逻辑,需要使用直接取消注释即可
  // const currentDate = new Date();
  // activeSheet.getRange(row,4).setValue(currentDate);
  // if(activeSheet.getRange(row,3).getValue() == ""){
  //   activeSheet.getRange(row,3).setValue(currentDate);
  // }
}

核心修改说明

  • 移除了硬编码的工作表名限制,所有工作表只要满足触发条件都会执行推送,通过activeSheet.getName()直接获取当前触发操作的工作表名称,自动带入消息内容。
  • 不再固定读取第8列内容,改为通过getRange(row, 1, 1, lastCol)获取当前触发行从第1列到最后一个有内容列的全部数据,逐列格式化后拼接进消息。
  • 统一了Telegram消息发送逻辑,去掉了原代码中未定义的sendText函数调用,直接通过UrlFetchApp调用接口发送消息,避免执行报错。
  • 优化了触发条件判断逻辑,提前过滤不符合条件的编辑操作,减少不必要的代码执行。

注意事项:

  1. 简单onEdit触发器没有访问外部接口的权限,你需要在脚本编辑器的「触发器」页面手动添加可安装编辑触发器,选择onEdit函数,触发事件类型为「编辑时」,授权相关权限后才能正常调用Telegram接口发送消息。
  2. 代码里的列名可以根据你实际的表格字段自定义替换,消息可读性更高。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 09:36:02