求excel vba代码把A列筛选后B列可见单元格内容与sheet2内容重复的数量填入到C列
求excelvba代码把A列筛选后B列可见单元格内容与sheet2内容重复的数量填入到C列如图片说明,sheet1A列是筛选状态,求vba代码把B列可见单元格数量与she...
求excel vba代码把A列筛选后B列可见单元格内容与sheet2内容重复的数量填入到C列如图片说明,sheet1 A列是筛选状态,求vba代码把B列可见单元格数量与sheet2数量有一样的填入到对应C列单元格,因原数据有几十万行,这个操作使用非常频繁求用vba解决,谢谢
展开
3个回答
展开全部
感觉没有必要用VBA
直接用Vlookup函数就可以
C2中输入
=iferror(Vlookup(B2,Sheet2!A:A,1,),"")
往下填充即可
直接用Vlookup函数就可以
C2中输入
=iferror(Vlookup(B2,Sheet2!A:A,1,),"")
往下填充即可
追问
目前就是用的此方法,因数据几十万行,每行都套个公式Excel会很卡很卡,需要反复筛选一些不同数据进行匹配确认,所以希望用VBA会方便一些,谢谢!
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
筛选后运行以下代码,能满足你的要求:
Sub 对比填数据()
Dim I&, Ar, Ra As Range, D As Object
Set D = CreateObject("scripting.dictionary")
Ar = Sheets("sheet2").UsedRange
For I = 2 To UBound(Ar)
D(Ar(I, 1)) = ""
Next
For Each Ra In Sheets("Sheet1").UsedRange.Columns(2).SpecialCells(12)
If D.exists(Ra.Value) Then Ra.Offset(, 1) = Ra
Next
End Sub
追问
太感谢了,正是我想要的结果,非常感谢
追答
不用谢,是因为你的截图很清楚表达了问题,截图中能看见行列标,否则我也没法写出代码
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |