背景
Excel的vlookup函數(shù)是做數(shù)據(jù)統(tǒng)計(jì)分析的常用函數(shù),當(dāng)數(shù)據(jù)量達(dá)到上萬(wàn)行甚至幾十萬(wàn)行時(shí)使用vlookup函數(shù)匹配結(jié)果將要面臨漫長(zhǎng)的等待,但數(shù)據(jù)量又不至于拿到數(shù)據(jù)庫(kù)處理,為了解決此問(wèn)題用vba寫(xiě)了個(gè)加快vlookup的工具。(關(guān)鍵字:vlookup太卡、vlookup太慢、vlookup卡死)
基礎(chǔ)教程開(kāi)始??
1、打開(kāi)與激活窗口
打開(kāi)沒(méi)反應(yīng):
(如果你打開(kāi)沒(méi)有任何反應(yīng),可能是因?yàn)槟愕膃xcel禁用了宏并不發(fā)出通知,解決啟用宏具體操作百度很多教程。另外如果你頻繁使用此工具不想要提示宏安全的話建議信任所有宏啟動(dòng))
(如果你通過(guò)了上面的操作后打開(kāi)還是沒(méi)有反應(yīng),可能是因?yàn)槲募槐恍湃?,excel啟動(dòng)了受保護(hù)的視圖。出現(xiàn)這個(gè)問(wèn)題可能是因?yàn)閭鬟fexcel文件時(shí)沒(méi)有壓縮,建議在底部網(wǎng)盤(pán)鏈接重新下載壓縮文件。如果不是壓縮的問(wèn)題,嘗試一下以下操作:先關(guān)閉其他excel文件,只打開(kāi)此文件??點(diǎn)擊‘視圖’??點(diǎn)擊‘取消隱藏’??選擇取消隱藏的工作簿,點(diǎn)擊‘確定’??上方出現(xiàn)受保護(hù)的視圖的提示,點(diǎn)擊‘啟動(dòng)編輯’,使文件可編輯??點(diǎn)擊‘視圖’??‘隱藏’本文件??點(diǎn)擊右上方X關(guān)閉工作簿??提示保存文件,點(diǎn)擊‘保存’保存文件??完成操作,以后打開(kāi)就不會(huì)對(duì)該文件啟動(dòng)保護(hù)視圖了)
(office版本過(guò)低可能存在兼容性問(wèn)題,推薦使用office2010及以上版本)
雙擊打開(kāi)vlookup工具,如果禁止宏了需要<啟用宏>

點(diǎn)擊<確定>激活主窗口,或者點(diǎn)擊右上角X駐留后臺(tái)(最小化)

最小化之后按快捷鍵 {Alt}+{方向鍵 ↑}
或者點(diǎn)擊“視圖”→點(diǎn)擊“宏”→選中VlookupTool宏→點(diǎn)擊<執(zhí)行>
以上兩種方式都可以激活主窗口,推薦使用快捷鍵

2、匹配工作開(kāi)始
測(cè)試數(shù)據(jù)是以下兩個(gè)excel文件進(jìn)行匹配,數(shù)據(jù)量是一百萬(wàn)行。
現(xiàn)在需要把<數(shù)據(jù)來(lái)源>的表<賬號(hào)與手機(jī)號(hào)對(duì)應(yīng)表>中的列<手機(jī)號(hào)碼>
匹配到<賬號(hào)清單>的表<賬號(hào)清單>中的列<對(duì)應(yīng)手機(jī)號(hào)>中去


平時(shí),只需要一個(gè)vlookup,然后雙擊往下填充就可以了,像這樣:

但是!數(shù)據(jù)量這么大即便性能好的電腦都需要等待半小時(shí)以上,老電腦甚至卡死。
現(xiàn)在,用此工具便可完成這個(gè)操作。
前面已經(jīng)打開(kāi)了工具了,正在后臺(tái)默默等待激活使用。
按住快捷鍵{ALT}+{方向鍵↑}激活窗口
選擇好對(duì)應(yīng)的工作簿、工作表、列,然后點(diǎn)擊<開(kāi)始>

等待處理,耗時(shí)138.9秒!

基礎(chǔ)教程完結(jié)??
特點(diǎn)介紹??
1、多數(shù)情況比自帶函數(shù)快,直接寫(xiě)入結(jié)果值,方便快捷。
2、忽視字符型數(shù)值型查找結(jié)果
下圖結(jié)果顯示標(biāo)黃區(qū)域(數(shù)據(jù)源前十行與查找列后五行)數(shù)值類(lèi)型為字符型自帶vlookup不能找到結(jié)果,此工具都能找出來(lái)

3、自定義無(wú)結(jié)果值
下圖顯示,勾選了‘替換無(wú)結(jié)果值’填入‘該賬號(hào)不存在’
結(jié)果顯示‘#N/A’直接替換成‘該賬號(hào)不存在’

4、把重復(fù)結(jié)果串聯(lián)
串聯(lián)勾選重復(fù)結(jié)果,可把有重復(fù)結(jié)果的串聯(lián)起來(lái)

5、可以選擇是否忽略英文大小寫(xiě)
黃色區(qū)域是小寫(xiě),匹配結(jié)果如圖

詳細(xì)介紹??

1、其中藍(lán)色框是查找范圍(數(shù)據(jù)源)及匹配哪一列的值,綠色框是需要查找的值及填充列,與Excel自帶VLOOKUP函數(shù)關(guān)系請(qǐng)看上圖;
2、選擇列時(shí)以下拉框形式選擇,顯示內(nèi)容為工作表第一行的值,假如為空值顯示NULL,選擇完成后自動(dòng)讀取當(dāng)前列字母及有效行數(shù)顯示在下面的灰色框;
3、“起始行”代表把匹配結(jié)果從選擇的列中第幾個(gè)單元格往下寫(xiě)入,通常除去首行就是在第二行開(kāi)始,默認(rèn)值為2;
4、“替換無(wú)結(jié)果值”按需勾選,可以將無(wú)法索引的結(jié)果替換為特定的值,默認(rèn)勾選,默認(rèn)替換值為#N/A;
5、“重復(fù)結(jié)果串聯(lián)值”按需求勾選,不勾選時(shí)遇到當(dāng)索引有多個(gè)結(jié)果時(shí)取第一個(gè)值,勾選時(shí)將多個(gè)結(jié)果連接一起,用特定值相隔,默認(rèn)替換值為&,默認(rèn)不勾選;
6、“重新加載工作簿”,工具不能實(shí)時(shí)讀取新打開(kāi)的工作簿,當(dāng)后面新打開(kāi)的工作簿未能讀取時(shí)點(diǎn)擊重新加載便可。
7、勾選忽略大小寫(xiě)時(shí)會(huì)忽略索引列的英文大小寫(xiě),默認(rèn)不忽略(自帶的vlookup函數(shù)默認(rèn)忽略)
8、點(diǎn)擊左下角可以進(jìn)行打賞哦。
下載使用
百度云下載鏈接:https://pan.baidu.com/s/1bRsR4twtk3bvj3GP27SLdQ
提取碼:re9n
想看碼源的請(qǐng)到Github:https://github.com/StinkCat/VlookupTool
更新情況
2019-11-27 更新:添加處理進(jìn)度(解決出現(xiàn)鼠標(biāo)打圈假死情況)
2020-06-22 更新:添加匹配時(shí)可否忽略大小寫(xiě)
2020-07-08 更新:解決最后寫(xiě)入數(shù)據(jù)時(shí)卡頓可能出現(xiàn)進(jìn)度窗口被遮擋問(wèn)題
2021-04-16 更新:1、調(diào)整窗口大小 2、更改統(tǒng)計(jì)行數(shù)方法修復(fù)尾行有太多空白行導(dǎo)致卡死