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

如何在Google Spreadsheet中让Sheet1单元格背景色同步Sheet2同位置单元格

Google Sheets 跨工作表单元格背景色同步实现方案

Google Sheets 本身没有提供原生的格式同步函数,你可以通过内置的 Apps Script 实现需求,操作步骤如下:

操作步骤

  1. 打开目标Google工作簿,点击顶部菜单栏的「扩展程序」→「Apps Script」打开脚本编辑器
  2. 清空编辑器内默认的示例代码,粘贴如下代码:
function syncA1BackgroundColor() {
  const workbook = SpreadsheetApp.getActiveSpreadsheet();
  // 获取源单元格(Sheet2 A1)的背景色
  const sourceColor = workbook.getSheetByName('Sheet2').getRange('A1').getBackground();
  // 给目标单元格(Sheet1 A1)设置相同背景色
  workbook.getSheetByName('Sheet1').getRange('A1').setBackground(sourceColor);
}
  1. 点击编辑器顶部的保存按钮,给项目自定义命名(例如「背景色同步工具」),按照页面提示完成账号权限验证即可。
  2. 配置自动触发规则:
    • 点击脚本编辑器左侧的闹钟形状的「触发器」图标
    • 点击右下角「添加触发器」按钮
    • 运行函数选择 syncA1BackgroundColor
    • 事件来源选择「电子表格」
    • 事件类型选择「更改」
    • 保存配置即可

效果说明

配置完成后,只要你修改了Sheet2 A1的背景色,刷新Sheet1页面即可看到A1背景色自动同步完成,无需手动操作。
如果需要同步其他单元格范围,只需要修改代码中getRange()的参数即可,例如同步Sheet2 A1:C3范围到Sheet1对应位置的代码如下:

function syncRangeBackgroundColor() {
  const workbook = SpreadsheetApp.getActiveSpreadsheet();
  const sourceRange = workbook.getSheetByName('Sheet2').getRange('A1:C3');
  const targetRange = workbook.getSheetByName('Sheet1').getRange('A1:C3');
  // 批量获取/设置背景色
  targetRange.setBackgrounds(sourceRange.getBackgrounds());
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 08:45:02