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

Google Sheets:指定单元格非空时自动填充另一单元格内容

解决Google Sheets自动填充同行A列内容的问题

嘿,作为Google Sheets新手,你的需求其实可以分两种场景处理,我给你整理了两种简单易懂的方案,你可以根据实际情况选:

方法1:用公式快速实现(无需写代码)

如果你能接受在输入触发内容后,在另一列(比如C列)显示A列的单词,那公式就完全够用,操作超简单:

  • 选中C1单元格,输入公式:=IF(NOT(ISBLANK(B1)), A1, "")
  • 把鼠标放在C1单元格右下角的小方块上,按住下拉到所有需要的行就行

这样一来,只要B列的单元格不为空(不管你输入x还是其他任何内容),C列同行就会自动显示A列的单词;要是你把B列的内容清空,C列也会跟着变回空值。

方法2:用Apps Script实现(修改输入单元格本身)

如果你确实需要在B列本身输入内容后,自动替换成同行A列的单词(比如输入x后,B列单元格直接变成A列的词),那就要用到Google Apps Script了,步骤也不难:

步骤1:打开脚本编辑器

在你的Google Sheets里,点击顶部菜单栏的「扩展程序」→「Apps Script」,就能打开脚本编辑页面啦。

步骤2:替换脚本代码

把编辑器里默认的代码全部删掉,粘贴下面的代码:

function onEdit(e) {
  // 获取当前编辑的单元格信息
  const editedRange = e.range;
  const activeSheet = editedRange.getSheet();
  
  // 只处理B列的单元格(B列对应列号2,要是改其他列就换数字,比如C列是3)
  if (editedRange.getColumn() !== 2) return;
  
  // 获取同行A列的内容
  const columnAValue = activeSheet.getRange(editedRange.getRow(), 1).getValue();
  
  // 只有A列有内容,且当前B列单元格输入了内容时,才替换成A列的值
  if (columnAValue && editedRange.getValue()) {
    editedRange.setValue(columnAValue);
  }
}

步骤3:保存并测试

  • 点击编辑器顶部的保存按钮,给你的脚本起个名字(比如「AutoFillWordFromA」)。
  • 回到表格,在B列随便找个单元格输入x或者其他内容,回车后,这个单元格就会自动变成同行A列的单词了!

小提示

这个脚本里的onEdit是Google Sheets自带的触发函数,只要表格有编辑操作就会自动运行,不用手动触发。要是你想改成其他列触发,把代码里的2换成对应列的数字就行(比如D列是4)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 08:00:33