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

Sheet1与Sheet2列值匹配时将Sheet2对应列设为true的实现方法咨询

实现方案(分Google Sheets 和 Excel两种场景)

一、Google Sheets (Google Apps Script 版本)

  • 打开你的表格,点击顶部菜单栏「扩展程序」-「Apps 脚本」打开脚本编辑器
  • 删除默认生成的空白代码,替换为下方代码,按需修改配置项后即可运行
function updateMatchedRows() {
  // 配置项:COL_TO_UPDATE填写要更新的列序号,比如D列是4、E列是5,自行修改
  const COL_TO_UPDATE = 4;
  const UPDATE_VALUE = "true";

  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const sheet1 = ss.getSheetByName("Sheet1");
  const sheet2 = ss.getSheetByName("Sheet2");

  // 提取Sheet1 A列所有非空值
  const sheet1AValues = sheet1.getRange("A:A").getValues().flat().filter(val => val !== "");
  // 提取Sheet2所有行数据
  const sheet2AllValues = sheet2.getDataRange().getValues();

  // 遍历Sheet2做匹配更新
  for (let i = 0; i < sheet2AllValues.length; i++) {
    // Sheet2 C列对应数组索引为2(数组从0开始计数)
    const curMatchValue = sheet2AllValues[i][2];
    if (sheet1AValues.includes(curMatchValue)) {
      sheet2.getRange(i + 1, COL_TO_UPDATE).setValue(UPDATE_VALUE);
    }
  }
  SpreadsheetApp.getUi().alert("匹配更新完成");
}
  • 首次运行需要给脚本授权,授权通过后直接执行updateMatchedRows函数即可。

二、Excel (VBA版本)

  • 打开Excel文件,按Alt + F11调出VBA编辑器
  • 右键点击左侧你的工作簿名称,选择「插入」-「模块」,粘贴下方代码
Sub UpdateMatchedRows()
    ' 配置项:COL_TO_UPDATE填写要更新的列序号,比如D列是4、E列是5,自行修改
    Const COL_TO_UPDATE As Integer = 4
    Const UPDATE_VALUE As String = "true"
    
    Dim sheet1 As Worksheet, sheet2 As Worksheet
    Dim sheet1ARng As Range, cell As Range, findRng As Range
    
    Set sheet1 = ThisWorkbook.Sheets("Sheet1")
    Set sheet2 = ThisWorkbook.Sheets("Sheet2")
    ' 锁定Sheet1 A列非空单元格范围
    Set sheet1ARng = sheet1.Range("A1:A" & sheet1.Cells(Rows.Count, "A").End(xlUp).Row)
    
    ' 遍历Sheet2 C列做匹配
    For Each cell In sheet2.Range("C1:C" & sheet2.Cells(Rows.Count, "C").End(xlUp).Row)
        Set findRng = sheet1ARng.Find(what:=cell.Value, LookIn:=xlValues, lookat:=xlWhole)
        If Not findRng Is Nothing Then
            sheet2.Cells(cell.Row, COL_TO_UPDATE).Value = UPDATE_VALUE
        End If
    Next cell
    MsgBox "匹配更新完成"
End Sub
  • 按F5直接运行即可完成更新。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 05:06:03