|
在产品明细工作薄打开或关闭的状态,在查询表的C3单元格输入产品名称,或D3单元格输入产品编码,或E3单元格输入
防伪码,(这三个条件单一个查询就行了,即三种查询方式)可以查找产品明细工作薄的所有符合条件数据在查询表A6-J6显示.
- Sub AA()
- Dim CNN As Object, SQL(), SH As Worksheet, N As Integer, SQL2, nm$, mc$
- Set CNN = CreateObject("ADODB.CONNECTION")
- nm = ThisWorkbook.Path & "\产品明细.xls"
- mc = [c3].Value: bm = [d3].Value: fm = [e3].Value
- CNN.Open "PROVIDER = MICROSOFT.JET.OLEDB.4.0;EXTENDED PROPERTIES =EXCEL 8.0;DATA SOURCE =" & nm
- For Each SH In Workbooks("产品明细.xls").Sheets
- N = N + 1
- ReDim Preserve SQL(1 To N)
- If mc <> "" Then
- SQL(N) = "SELECT * FROM [" & SH.Name & "$a3:j] WHERE 产品名称='" & mc & "'"
- ElseIf bm <> "" Then
- SQL(N) = "SELECT * FROM [" & SH.Name & "$a3:j] WHERE 产品编码='" & bm & "'"
- ElseIf fm <> "" Then
- SQL(N) = "SELECT * FROM [" & SH.Name & "$a3:j] WHERE 防伪码='" & fm & "'"
- End If
- Next
- SQL2 = Join(SQL, " UNION ALL ")
- [A6:j1000].ClearContents
- [A6].CopyFromRecordset CNN.Execute(SQL2)
- CNN.Close
- Set CNN = Nothing
- End Sub
复制代码
|
|