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

Excel中如何实现AD列值为1时将对应行B列内容复制到C列

Excel 条件赋值操作实现方法

方案1:公式法(适合无编程基础、单次操作场景)

操作步骤:

  • 确认数据起始行:假设你的表格第1行是表头,实际数据从第2行开始,先选中C2单元格
  • 按需输入对应公式:
    • 如果C列原本无内容,AD列值不等于1时C列留空:输入 =IF(AD2=1,B2,"")
    • 如果需要保留AD列值不等于1时C列的原有内容:先找一个空白的辅助列(比如AE列),在AE2输入 =IF(AD2=1,B2,C2)
  • 把鼠标移到输入公式的单元格右下角,等光标变成十字填充柄后,下拉到所有数据行,公式会自动适配每行的行号
  • 如果用了辅助列,全选辅助列的计算结果,右键选择「复制」,再选中C列对应位置,右键选择「粘贴值」即可覆盖原有C列内容,最后删除辅助列就行

注意:如果AD列的「1」是文本格式,公式里的1需要加英文双引号,改成 =IF(AD2="1",B2,"")

方案2:VBA法(适合需要反复执行该操作的场景)

操作步骤:

  • 按下 Alt+F11 打开VBA编辑器,依次点击菜单栏「插入」-「模块」
  • 在弹出的代码编辑窗口粘贴以下代码:
Sub 按条件复制内容()
Dim 最后一行 As Long
' 自动识别AD列有数据的最后一行行号
最后一行 = Cells(Rows.Count, "AD").End(xlUp).Row
' 遍历所有数据行
For 行号 = 1 To 最后一行
    ' 判断AD列值是否为1
    If Cells(行号, "AD").Value = 1 Then
        ' 把B列内容赋值到C列
        Cells(行号, "C").Value = Cells(行号, "B").Value
    End If
Next 行号
End Sub
  • 按下 F5 直接运行代码即可完成操作,该操作会保留AD列值不等于1的行的原有C列内容

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 22:06:03