亞寵展、全球寵物產業(yè)風向標——亞洲寵物展覽會深度解析
977
2025-03-31
[Excel VBA]用字典處理多條件查詢問題
我們今天分享的內容是使用VBA代碼實現多條件查詢的功能。
Sub DicFind() Dim d As Object, arr, brr, i&, j&, k&, s$ Set d = CreateObject(“ing.dictionary”) ‘后期引用字典 ‘d.CompareMode = vbTextCompare ‘不區(qū)分字母大小寫 arr = Sheets(“明細表”).[a1].CurrentRegion ‘明細數據裝入數組arr For i = 2 To UBound(arr) ‘遍歷數組arr,將數據裝入字典,以備查詢 ‘標題行不要,從第二行開始遍歷 For j = 2 To UBound(arr, 2) ‘標題列不要,從第二列開始遍歷 s = arr(i, 1) & “@” & arr(1, j) ‘[email?protected],作為字典的key值 d(s) = arr(i, j) ‘成績是查詢的結果,作為字典的item Next Next brr = Sheets(“查詢表”).[a1].CurrentRegion ‘查詢區(qū)域的數據裝入數組brr For i = 2 To UBound(brr) s = brr(i, 1) & “@” & brr(i, 2) ‘合并查詢的兩個條件成為一個條件字符串,[email?protected] For j = 3 To UBound(brr, 2) If d.exists(s) Then ‘如果字典中存在變量s brr(i, j) = d(s) ‘從字典中取s對應的條目 Else brr(i, j) = “” ‘否則返回假空 End If Next Next Sheets(“查詢表”).[a1].CurrentRegion = brr ‘將數組brr放回查詢區(qū)域 MsgBox “查詢OK” Set d = Nothing ‘釋放字典內存 End Sub
測試及練習文件: https://pan.baidu.com/s/1slv74qp
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發(fā)現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發(fā)現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。