Bir VLOOKUP, yoxsa iki LOOKUP? Hansı daha sürətlidir? - INNAB

Bir VLOOKUP, yoxsa iki LOOKUP? Hansı daha sürətlidir?

Maliyyəçilər, insan resursarı əməkdaşları, analtiklər, və böyük məlumat bazası ilə işləyən hər kəsin funksiyalar bölməsində ən çox istifadə etdiyi funksiyalardan biri də VLOOKUP funksiyasıdır. LOOKUP funksiyası ilə işləyərkən verilənlərin ilk öncə sort edilməsi və bəzən gözlənilməyən dəyərlərin qaytarması bu funksiyanın populyarlığını daha da azaltmışdır. Buna baxmayaraq,  VLOOKUP funksiyasını da bu sahədə ideal  deyil. Səbəb isə, VLOOKUP funksiyasının sürətinin az olmasıdır. Yəqin ki, aşağıdakı şəkildə görünən hissə böyük məlumat bazası ilə işləyənlər üçün çox tanış bir mənzərədir. Funksiyanın işləməsi zamanı dəqiqlələr gözləməklə keçir.

Suret

Bu problemin həll edilməsi üçün iki LOOKUP funksiyanın birlikdə istifadəsinə baxacağıq. Aşağıdakı cədvəldə Siz VLOOKUP funksiyası ilə LOOKUP funksiyasının sürət fərqini görə bilərsiniz.

baza6

Yuxarıdakı fərqləri nəzərə alarsaq LOOKUP funksiyasına ehtiyac daha da artır. Çünki, VLOOKUP funksiyasından fərqli olaraq LOOKUP funksiyası binary search metodu ilə axtarış edir ki, bu da daha yüksək sürətlilik deməkdir. İndi isə funksiyanın izahına keçək.
Funksiyanın iki metodu var.
1. İki parameter qəbul edən metod. VLOOKUPın bu metodunun sintaksisi =LOOKUP(Axtarılan dəyər;Axtarılan dəyərin yerləşdiyi sütundan axtarılacaq dəyər olan sütun) şəklindədir.
Fərz edək ki, aşağıdakı şəkildə cədvəl verilmişdir.

baza1

LOOKUP funksiyası ilə LOOKUPın birinci metodundan istifadə edərək maaşını tapaq. Bunun üçün K2 xanasına gələrək =LOOKUP(J2;A:F) funksiyasını yazaq.

baza2

 

Beləliklə, LOOKUP funsiyası ilə axtarılan dəyərləri tapmış olduq. LOOKUP funksiyasını istifadə edərkən, nəzərə almaq lazımdır ki, axtarılan dəyər A-Zə və ya kiçikdən böyüyə sort edilməlidir.
2. 3 parametr qəbul edən metod. Sintaksisi: =LOOKUP(Axtarılan dəyər;Axtarılacaq sütun;Axtarılan dəyərin olduğu sütun)
Yuxarıdakı misalı bu yolla icra edərsək K2 funksiyasının üzərində gələrək =LOOKUP(J2;A:A;F:F) funksiyasını yazaq. Nəticə eyni olacaqdır.

baza3

Beləliklə, LOOKUP funksiyası ilə tanış olduq.

Bu funksiyanın əvvəldə də dediyim kimi axtarılacaq sütunda sort edilməməsi gözlənilməyən nəticə verə biləcəyi bir durum var. Məsələn, A sütununda məlumatları sort etməsək aşağıdakı xanadakı kimi funksiya səhv nəticə qaytaracaqdır. Çünki, 13674 kodu axtardığımız verilənlər bazasında yoxdur.

baza4

Bu xətanı aradan qaldırmaq üçün iki LOOKUP funsiyasını İF funksiyasından istifadə edərək iç içə yazacağıq. =IF(J2=LOOKUP(J2;$A$2:$A$9);LOOKUP(J2;$A$2:$A$9);#N/A)

baza5

Beləliklə, iki LOOKUP funksiyasından istifadə edərək yekun nəticəni doğru aldıq.

Faydalı olması diləyi ilə

 

 

Bir cavab yazın

Sizin e-poçt ünvanınız dərc edilməyəcəkdir. Gərəkli sahələr * ilə işarələnmişdir