自定义条件查询_数据查询不止有vlookup函数,自定义zlookup函数查询操作更高效...
Excel數據查詢,相信大家首先會想到vlookup函數。毋庸置疑vlookup函數在Excel數據查詢中作用是非常的強大。但是它也有一些不能實現的數據查詢。
如上圖所示,我們需要根據人員的出現次數,提取第N次的數據。這里vlookup函數就無法使用,但是我們使用Zlookup函數就可以輕松完成。下面我們就來學習的學習一下zlookup函數如何快速解決我們的查詢問題。
案例一:Zlookup查詢函數查詢人員第2次銷售數據
案例說明:如上圖,我們需要提取張三、李四在所有銷售數據中的第二次銷售數據。這種操作我們用vlookup函數就無法解決。
函數公式:
=zlookup(G5,$D$2:$E$12,2,2)
函數解析:
1、zlookup函數與vlookup函數類似,總共是4個參數,都是通過查詢條件值在對應數據區域中進行數據查詢;
2、第一參數G5代表我們需要查詢的條件值;第二參數D2:E12代表數據查詢區域;第三參數2代表銷售額在姓名右起第2列;第四參數2代表從上往下查詢第二個值。
案例二:zlookup函數查詢人員最后一天的銷售數據
案例說明:如上圖所示,我們需要提取對應人員的最后一天的銷售數據,vlookup查詢最后一條數據同樣是無法操作。
函數公式:
=zlookup(G5,$D$2:$E$12,2,0)
函數解析:
1、zlookup函數查詢最后一條數據的時候,函數的前面三個參數的使用方法跟案例一是一樣的,我們只需要修改第四參數的值調整為0即可。
案例三:zlookup函數輕松完成數據的一對多查詢操作
案例說明:我們在對數據進行一對多查詢的時候,vlookup函數我們需要結合countif條件計算及row函數嵌套才能操作,但是使用zlookup函數我們可以實現最簡單從一對多查詢。
函數公式:
=zlookup(G5,$D$2:$E$12,2,-1)
函數解析:
1、zlookup函數進行數據一對多查詢的時候,我們同樣只需要修改函數的第四參數即可實現。將第四參數修改為0,這樣就能查詢出對應的所有值,每個值中間會通過逗號連接。
通過上面的案例講解,現在你學會如何利用自定義的zlookup函數進行數據查找了嗎?當然在使用這個函數的時候,我們需要首先在代碼編輯窗口進行函數的自定義。操作步驟如下:
第一步:按Alt+F11或者右鍵點擊工作表名稱,選擇查看代碼進入代碼編輯窗口。然后在左邊工程窗口中,右鍵點擊Thisworkbook點擊插入模塊;如下圖所示:
第二步:在模塊窗口界面,我們將下方的代碼粘貼進去,這樣我們就通過function函數自定義了一個zlookup查詢函數。如下圖所示:
自定義zlookup函數代碼如下:
Function zlookup(rg, rgs As Range, L As Integer, M As Integer)Dim arr1, ARR2, 列數Dim R, n, K, X, cc, sr As Stringarr1 = rg.ValueARR2 = rgsIf VBA.IsArray(arr1) ThenFor Each R In arr1If R <> "" Thencc = cc & R列數 = 列數 + 1End IfNext RElsecc = arr1End IfIf M > 0 Then '非查找最后一個For X = 1 To UBound(ARR2)sr = ""If 列數 > 1 ThenFor q = 1 To 列數sr = sr & ARR2(X, q)Next qElsesr = ARR2(X, 1)End IfIf sr = cc ThenK = K + 1If K = M Thenzlookup = ARR2(X, L)Exit FunctionEnd IfEnd IfNext XElseIf M = -1 Then '查找所有值For X = 1 To UBound(ARR2)sr = ""If 列數 > 1 ThenFor q = 1 To 列數sr = sr & ARR2(X, q)Next qElsesr = ARR2(X, 1)End IfIf sr = cc Thenzlookup = zlookup &總結
以上是生活随笔為你收集整理的自定义条件查询_数据查询不止有vlookup函数,自定义zlookup函数查询操作更高效...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python怎么把数据写进txt_pyt
- 下一篇: 中班教案《流星球》反思