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

如何在谷歌表格中创建仅清除用户输入数据的恢复按钮

只清除用户输入数据,保留Google Sheets默认值的解决方案

你的问题很常见——直接用clearContent()会把所有内容包括预设的默认数据一起清空,想要只重置到初始状态,核心思路是先保存好初始的默认值,恢复时把这些值写回去,而不是单纯清空。下面给你两种实用的实现方法:

方法一:用脚本属性存储默认值(推荐)

这种方法不需要额外工作表,把默认值存在脚本的内置存储里,灵活又不占空间:

步骤1:先保存初始默认值

先创建一个函数,把你要保留的默认数据存起来。只需要运行一次这个函数,之后就不用管了:

function saveDefaultValues() {
  const sheet = SpreadsheetApp.getActive().getSheetByName('Sheet1');
  const defaultRange = sheet.getRange('B13:B30');
  // 获取初始默认值的二维数组
  const defaultValues = defaultRange.getValues();
  // 把值存在脚本属性里,用一个唯一的键标识
  PropertiesService.getScriptProperties().setProperty('DEFAULT_B13_B30', JSON.stringify(defaultValues));
}

运行这个函数的方式:打开脚本编辑器,选中这个函数,点击运行按钮,第一次运行需要授权权限。

步骤2:修改你的重置函数

把原来的clearRange()改成从存储里读取默认值,再写回单元格:

function clearRange() {
  const sheet = SpreadsheetApp.getActive().getSheetByName('Sheet1');
  const targetRange = sheet.getRange('B13:B30');
  // 从脚本属性里取出之前保存的默认值,转成数组
  const savedDefaults = JSON.parse(PropertiesService.getScriptProperties().getProperty('DEFAULT_B13_B30'));
  // 把默认值写回目标单元格
  targetRange.setValues(savedDefaults);
}

这样运行clearRange()时,就会把用户输入的内容替换回初始的默认数据,完美保留你预设的内容。

方法二:用隐藏工作表备份默认值

如果你更直观地想看到备份的数据,可以用一个隐藏工作表来存初始值:

步骤1:创建隐藏备份表

  1. 在你的Spreadsheet里新建一个工作表,比如命名为BackupDefaults
  2. 把Sheet1里B13:B30的默认数据复制粘贴到BackupDefaults的对应位置(比如也是B13:B30)
  3. 右键点击BackupDefaults工作表标签,选择"隐藏工作表"

步骤2:修改重置函数

function clearRange() {
  const mainSheet = SpreadsheetApp.getActive().getSheetByName('Sheet1');
  const backupSheet = SpreadsheetApp.getActive().getSheetByName('BackupDefaults');
  
  // 从备份表读取默认值,写回主表
  const defaultValues = backupSheet.getRange('B13:B30').getValues();
  mainSheet.getRange('B13:B30').setValues(defaultValues);
}

这种方法的好处是如果之后默认数据需要修改,直接修改隐藏的备份表就行,不用改脚本。

最后一步:绑定按钮

不管用哪种方法,都可以在工作表里插入一个按钮,把clearRange()函数绑定上去,用户点击就能一键重置啦。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 07:49:21