Excel vloopup 問題

有六十萬列 data, 行 vlookup 行到 hang 機 ,請問有冇好方法

呢個係你部機唔夠RAM,SSD 唔夠大唔夠快嘅問題

TOP

本帖最後由 s20012797 於 2023-11-4 09:03 編輯

Excel的VLOOKUP函數在處理大量資料時可能會導致效能問題,特別是當你有60萬列資料時。 一些可能的解決方案,包括使Python腳本,將自動計算更改為手動,或使用雙重VLOOKUP(需要先排序)。 這些都是可行的方法,但是它們可能需要一些技術知識和時間來實施。(https://github.com/MiCigo/pandas ... ic-train/basic-4.py)

另外,你也可以考慮以下方法來提升效能:

使用INDEX和MATCH函數組合:這種方法通常比VLOOKUP更快,更靈活。 MATCH函數可以找到尋找值在陣列中的位置,然後INDEX函數可以使用這個位置來傳回對應的值。

使用Excel的資料模型:如果你的Excel版本支持,你可以使用Power Pivot加入資料模型。 數據模型允許你在記憶體中載入數據,這樣可以大大提高處理大量數據的速度。

優化你的數據:確保你的數據盡可能簡潔清晰。 刪除不必要的列,避免使用複雜的公式,盡可能使用數值而不是文字。

將資料分割成更小的區塊:如果可能,你可以嘗試將你的資料分割成幾個較小的部分,然後在每個部分上分別執行VLOOKUP。

TOP

本帖最後由 bongbong3481 於 2023-11-4 07:28 編輯

回覆 1# edenho

1. 將自動autocalculation 轉左manual 先
2. 用double-vlookup (佢既方法要先sortting ,再用兩個vlookup)
你google 下double-vlookup

我可以保證,以上方法有坐火箭既感覺,快到你吾信。

TOP

回覆  edenho

1. 將自動autocalculation 轉左manual 先
2. 用double-vlookup (佢既方法要先sortting , ...
bongbong3481 發表於 2023-11-4 06:51

試過用double vlookup 一輪,但由於每次update DB table 後都要重新sorting ,我個case 大約每日都會有update ,十幾萬條data , 所以都幾繁,最後都係轉返index match 算數

TOP

回覆 5# eddy


我印象中index match 好似吾是快好多,好似是快少少,另外應該沒double vlokup 咁快。

如果只是sorting問題 ,我覺得可以用vba sorting解決。

TOP

試過用double vlookup 一輪,但由於每次update DB table 後都要重新sorting ,我個case 大約每日都會有up ...
eddy 發表於 2023-11-4 20:07


十幾萬條data根本唔意該放係Excel度, 放係Access度運作起黎已經爽好多.

TOP

回覆  eddy


我印象中index match 好似吾是快好多,好似是快少少,另外應該沒double vlokup 咁快。

如果 ...
bongbong3481 發表於 2023-11-4 20:58

實測index match 係有感地快過vlookup, 而sorting double vlookup 就差唔多

不過index match 唔洗每人做sorting 先用得, 比double vlookup 少一個step

TOP

十幾萬條data根本唔意該放係Excel度, 放係Access度運作起黎已經爽好多.
jimking332 發表於 2023-11-4 22:22

本身都係俾連excel formula 都未識嘅人用,而且公司機無access ….

TOP

本身都係俾連excel formula 都未識嘅人用,而且公司機無access ….
eddy 發表於 2023/11/6 09:30


excel 下一版都吾知仲有冇得VBA,你同我講要記formula

TOP