|
本帖最后由 yuchidanyang 于 2023-4-26 18:09 编辑
查询表和数据表中是包含关系,请问这样的情况需要怎么编写代码?
如:查询表中部门信息是A,数据表中标题列的内容包含A但不仅限于A
求各位大佬指教
下面是参考代码,只有部门列内容等于标题列时才可用,请问怎么改?
- Sub 跨工作簿查询()
- Dim Sht As Worksheet '查询工作表
- Dim wkb_data As Workbook '数据工作簿
- Dim fullpath As String '路径带工作簿名称
- Dim i As Long
- fullpath = ThisWorkbook.Path & "\小狗.xlsx"
- Application.ScreenUpdating = False
- '第一部分:打开工作簿
- Set Sht = ThisWorkbook.Sheets("查询表") '数据查询表
- Set wkb_data = Workbooks.Open(fullpath) '打开数据所在的工作簿
- '第二部分:vba代码操作,获取目标数据
- With Sheets("数据表")
- For i = 2 To Sht.Cells(Rows.Count, 1).End(xlUp).Row '遍历查询表要查询数据的部门
- For j = 2 To .Cells(Rows.Count, 1).End(xlUp).Row '遍历数据
- If Sht.Cells(i, 1) = .Cells(j, 1) Then '按部门查询
- Sht.Cells(i, 2) = .Cells(j, 2) '输出销售额
- Exit For '有结果就退出当前循环,不再继续遍历下去
- End If
- Next
- Next
- End With
- '第三部分:关闭工作簿
- wkb_data.Close False '关闭工作簿,不保存更改
- Set wkb_data = Nothing '释放对象变量
- Application.ScreenUpdating = True
- End Su
复制代码
|
|