用vba做excel两个表的比对
本人学艺不精,工作需要,急求用vba做excel两个表的比对备注1:比对离线系统与在线系统的E列。在线系统没有的数据整行自动复制到sheet3中备注2:比对在线系统与离线...
本人学艺不精,工作需要,急求用vba做excel两个表的比对
备注1:比对离线系统与在线系统的E列。在线系统没有的数据整行自动复制到sheet3中
备注2:比对在线系统与离线系统的E列。离线系统没有的数据整行自动复制到sheet3中
交换比对,尽量做两个文件
附件,http://pan.baidu.com/s/1i5qAbDb 展开
备注1:比对离线系统与在线系统的E列。在线系统没有的数据整行自动复制到sheet3中
备注2:比对在线系统与离线系统的E列。离线系统没有的数据整行自动复制到sheet3中
交换比对,尽量做两个文件
附件,http://pan.baidu.com/s/1i5qAbDb 展开
2个回答
展开全部
Sub 备注1() '比对离线系统与在线系统的E列。在线系统没有的数据整行自动复制到sheet3中
Application.ScreenUpdating = False
Dim Dic, i%, n%
Sheets("离线系统").[1:1].Copy Sheets("Sheet3").[A1]
Sheets("Sheet3").UsedRange.Offset(1).Delete
n = 1
Sheets("在线系统").Activate
Set Dic = CreateObject("Scripting.Dictionary")
For i = 2 To [A1].CurrentRegion.Rows.Count
Dic(Cells(i, "E").Value) = ""
Next
Sheets("离线系统").Activate
For i = 2 To [A1].CurrentRegion.Rows.Count
If Not Dic.Exists(Cells(i, "E").Value) Then
n = n + 1
Rows(i).Copy Sheets("Sheet3").Rows(n)
End If
Next
Sheets("Sheet3").Activate
Application.ScreenUpdating = True
End Sub
备注1运行结果:
Sub 备注2() '比对在线系统与离线系统的E列。离线系统没有的数据整行自动复制到sheet3中
Application.ScreenUpdating = False
Dim Dic, i%, n%
Sheets("离线系统").[1:1].Copy Sheets("Sheet3").[A1]
Sheets("Sheet3").UsedRange.Offset(1).Delete
n = 1
Sheets("离线系统").Activate
Set Dic = CreateObject("Scripting.Dictionary")
For i = 2 To [A1].CurrentRegion.Rows.Count
Dic(Cells(i, "E").Value) = ""
Next
Sheets("在线系统").Activate
For i = 2 To [A1].CurrentRegion.Rows.Count
If Not Dic.Exists(Cells(i, "E").Value) Then
n = n + 1
Rows(i).Copy Sheets("Sheet3").Rows(n)
End If
Next
Sheets("Sheet3").Activate
Application.ScreenUpdating = True
End Sub
备注2运行结果:
展开全部
感觉用Excel公式就能做吧,Vlookup
比较结果分两个文件,那么再加上一个Sheet4不就好了
离线中找在线里面没有的数据:
A.在辅助列,比如H列,H2中输入公式
=VLOOKUP(E2,在线系统!$E:$E$,1,FALSE) ,下拉填充
B。对此列进行筛选,找出结果是#NA的行
C.将筛选出的数据复制到新的Sheet中就行了。
在在线Sheet中找离线中没有的数据,也类似
只是公式变成=VLOOKUP(E2,离线系统!$E:$E,1,FALSE),其他一样
比较结果分两个文件,那么再加上一个Sheet4不就好了
离线中找在线里面没有的数据:
A.在辅助列,比如H列,H2中输入公式
=VLOOKUP(E2,在线系统!$E:$E$,1,FALSE) ,下拉填充
B。对此列进行筛选,找出结果是#NA的行
C.将筛选出的数据复制到新的Sheet中就行了。
在在线Sheet中找离线中没有的数据,也类似
只是公式变成=VLOOKUP(E2,离线系统!$E:$E,1,FALSE),其他一样
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询