Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2623|回复: 2

两列数据相同时,用sheet2C列数据替换sheet1B列数据

[复制链接]
发表于 2019-5-29 07:53 | 显示全部楼层 |阅读模式
1学分
如果sheet1中某行的A、B两列数据与sheet2中某行的A、B相同,将sheet2中C列的数据替换掉sheet1中B列数据

业绩.zip

5.45 KB, 下载次数: 8

发表于 2019-5-29 09:09 | 显示全部楼层
代码放在sheet1中:
Dim arr
arr = Worksheets("sheet2").Range("a2:c6")
For i = 2 To [a1000].End(3).Row
    For k = 1 To UBound(arr)
        If (Cells(i, 1) = arr(k, 1)) And (Cells(i, 2) = arr(k, 2)) Then
            Cells(i, "h") = arr(k, 3)
            Exit For
        End If
    Next k
Next i

我并没有把B列直接替换掉,而是把查询结果放在了后面空白的H列。我倾向于认为需要在B列的后面增加一列来存放查询结果,这样新旧数据就能对照保存下来可能比较好。如果你还是坚持原来的要求,把
Cells(i, "h") = arr(k, 3) 改成
Cells(i, "b") = arr(k, 3),这里的"b"代表b列

回复

使用道具 举报

 楼主| 发表于 2019-5-29 15:08 | 显示全部楼层
hfwufanhf2006 发表于 2019-5-29 09:09
代码放在sheet1中:
Dim arr
arr = Worksheets("sheet2").Range("a2:c6")

谢谢

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-19 14:39 , Processed in 0.343962 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表