在查询过程中经常会用到两个值的查询,即要满足条件A,又要满足条件B,符合的这类的查询条件称之为双值查询,如何实现呢?不急,VBA会让你一键搞定。
此系列文章写道这里已经逐渐深入的展开了对VBA的代码的利用方法,不需要你理解代码的意义,只要跟着我,就会实现。
好了,不多说了,上代码:
一:在VBA编译器中拷贝下面的代码:一定要和下面的截图比对一下,有时在文章发表时会发现字符不全。
Sub KK2() 'AB唯一查
Dim bcontinue As Boolean
Dim mysearch As Range
Dim myfind As Range
Dim fristmyfind As String
Sheets("CBOM").Select
Sheets("CBOM").Range("c2 : d3000").Select
Selection.ClearContents
i = 2
Do While Cells(i, 1) ""
Cells(i, 1).Select
bcontinue = True
Set mysearch = Sheets("M").Range("A1 : A" & Sheets("M").Range("A1").End(xlDown).Row)
Set myfind = mysearch.Find(what:=Cells(i, 1), LookIn:=xlValues, lookat:=xlWhole)
If Not myfind Is Nothing Then fristmyfind = myfind.Address
Do Until myfind Is Nothing Or Not bcontinue
If Cells(i, 2) = Sheets("M").Cells(myfind.Row, 2) Then
Cells(i, 3) = Sheets("M").Cells(myfind.Row, 3)
Cells(i, 4) = Sheets("M").Cells(myfind.Row, 4)
Cells(i, 5) = Sheets("M").Cells(myfind.Row, 5)
Cells(i, 6) = Sheets("M").Cells(myfind.Row, 6)
Exit Do
End If
Set myfind = mysearch.FindNext(myfind)
If myfind.Address = fristmyfind Then bcontinue = False
Loop
Set myfind = Nothing
i = i + 1
Loop
Set mysearch = Nothing
MsgBox ("OK!")
End Sub
截图如下:
图一
好了,我们分别再命名两个工作表为“CBOM”“M”,”CBOM”放要查询的数据,M里放基础数据,建立一个按钮,选中,右键,关联到宏kk2.
二:M里放基础数据,
图二
三:”CBOM”放要查询的数据,建立一个按钮,选中,右键,关联到宏kk2.
图三
四:下面测试一下:
图四
看测试结果,是不是很方便呢?
世界需要懒人,生命才会GO GO GO GO GO ,正如奇妙的go语言,此平台会陆续推出更多的精彩内容,和大家分享。
分享成果,随喜正能量
领取专属 10元无门槛券
私享最新 技术干货