VBA'da VLOOKUP Nasıl Kullanılır (4 Yol)

  • Bunu Paylaş
Hugh West

Bazı belirli değerleri veya öğeleri aramak veya görmek açısından MS Excel çeşitli işlevler sağlar. VLOOKUP Herhangi bir veri kümesinden istenen verileri aramamıza yardımcı olur. Tam bir eşleşme mi yoksa yaklaşık bir eşleşme mi arayacağımızı belirtmemize izin verir. Bu işlevi Excel formülünde kullanmanın yanı sıra, bunu VBA kodunda da kullanabiliriz. Bu makalede, bunu nasıl kullanabileceğimizi göreceğiz VLOOKUP işlevi VBA'da.

Alıştırma Çalışma Kitabını İndirin

VBA.xlsm'de DÜŞEYARA

VBA'da DÜŞEYARA Kullanmanın 4 Yolu

1. VBA'da DÜŞEYARA Kullanarak Verileri Manuel Olarak Arama

ID, Name, Department, Joining Date ve Maaş bilgilerini içeren bir çalışan bilgisi veri kümemiz olsun. Şimdi görevimiz ID'lerini kullanarak çalışan bilgilerini manuel olarak bulmaktır. Bu bölüm için, ID'lerini kullanarak sadece çalışanın maaşını bulacağız.

Adım 1: Seçiniz Visual Basic altında Geliştirici sekmesi (Kısayol Alt + F11 )

Adım 2: Sonra bir pencere açılacak. Seçin Modül altında seçenek Ekleme düğme

Adım 3: Şimdi VBA konsoluna aşağıdaki kodu yazın ve Koşmak düğmesi (Kısayol F5 )

Kod:

 Sub vlookup_function_1() Dim Employee_id As Long Dim salary As Long Employee_id = 1144 Set myerange = Range("B4:F11") salary = Application.WorksheetFunction.VLookup(Employee_id, myerange, 5, False) MsgBox "Employee ID:" & Employee_id & " Salary " & "$" & salary End Sub 

Adım 4: Şimdi bir mesaj popu gelecek ve bilgileri gösterecektir

Daha fazlasını okuyun: Excel'de Metin Aramak için DÜŞEYARA (4 Kolay Yol)

2. VBA'da DÜŞEYARA Kullanarak Girdi ile Veri Arama

Şimdi giriş ile tablolardan veya aralıklardan nasıl veri arayabileceğimizi veya çıkarabileceğimizi görelim. Resimdeki gibi, girilen id'nin adını çalışan bilgileri tablosundan bulacağız.

Adım 1: Önce 1. Adımdan 2. Adıma kadar aynı adımları izleyerek VBA konsolunu açın

Adım 2: Şimdi VBA penceresine aşağıdaki kodu girin

Kod:

 Sub vlookup_function_2() Set myerange = Range("B4:F11") Set ID = Range("D13") Set Name = Range("D14") Name.Value = Application.WorksheetFunction.VLookup(ID, myerange, 2, False) End Sub 

Adım 3: Şimdi hücreye herhangi bir kimlik girin D13 ve kodu çalıştırın

Adım 4: Bu İsim kimliğe karşı kaydedilen gösterilecektir

Daha fazlasını okuyun: Excel'de DÜŞEYARA ile 10 En İyi Uygulama

Benzer Okumalar

  • DÜŞEYARA Çalışmıyor (8 Neden & Çözümler)
  • INDEX MATCH vs VLOOKUP Fonksiyonu (9 Örnek)
  • Excel'de Birden Çok Ölçütle DÜŞEYARA Kullanma (6 Yöntem + Alternatifler)
  • Sütundaki Son Değeri Bulmak için Excel DÜŞEYARA (Alternatiflerle)
  • Birden Fazla Değeri Dikey Olarak Döndürmek için Excel DÜŞEYARA

3. VBA'da DÜŞEYARA Kullanarak Giriş Kutusu ile Bilgi Bulma

VBA'nın giriş kutusunu kullanarak verileri nasıl arayabileceğimizi görelim. Arama yapmak için VLOOKUP Yine, veri kümesi aynı olacak, ancak arama yaklaşımı farklı olacaktır. Burada görevimiz, ID ve Departman girerek çalışanın maaşını bulmaktır.

Adım 1: Önce 1. Adımdan 2. Adıma kadar aynı adımları izleyerek VBA penceresini açın

Adım 2: Şimdi VBA konsoluna aşağıdaki kodu girin ve Koşmak o

Kod:

 Sub vlookup_function_3() For i = 4 To Cells(Rows.Count, "B").End(xlUp).Row Cells(i, "A").Value = Cells(i, "B").Value & "_" & Cells(i, "D").Value Next i End Sub 

Adım 3: Bu, ilk sütunda ID ve Departman ile birleştirilmiş bir dize yazdıracaktır

Adım 4: Şimdi tekrar VBA konsoluna gidin ve kodun tamamını girin ve tekrar çalıştırın

Kod:

 Sub vlookup_function_3() For i = 4 To Cells(Rows.Count, "B").End(xlUp).Row Cells(i, "A").Value = Cells(i, "B").Value & "_" & Cells(i, "D").Value Next i Dim ID As Long Dim department As String Dim lookup_val As String Dim salary As Long ID = InputBox("Çalışanın ID'sini girin") department = InputBox("Çalışanın departmanını girin") lookup_val = ID & "_" & department OnError GoTo Message check: salary = Application.WorksheetFunction.VLookup(lookup_val, Range("A:F"), 6, False) MsgBox ("Çalışanın maaşı $" & salary) Message: If Err.Number = 1004 Then MsgBox ("Çalışan verileri mevcut değil") End If End Sub 

Kod Açıklaması

  • İlk olarak, Cells(i, "A").Value = Cells(i, "B").Value & "_" & Cells(i, "D").Value Bu kodu kullanarak ID ve Departman değerlerini A sütununda birleştirerek saklıyoruz.
  • lookup_val = ID & "_" & departman bu, arama değerinin ID ve departman olacağını tanımlamaktadır.
  • salary = Application.WorksheetFunction.VLookup(lookup_val, Range("A: F"), 6, False) Burada eşleşen çalışanın maaşını şu isimli bir değişkene kaydediyoruz maaş
  • Err. Numarası = 1004 İse bu koşul kontrolüdür. hata numarasının 1004 olup olmadığını kontrol ediyoruz. Excel VBA'da 1004 kodu, aranan değerin bulunamadığı, silinmediği veya kaldırılmadığı anlamına gelir.

Adım 5: Şimdi bu resimdeki gibi bir açılır pencere olacak. Enter KIMLIK ve Departman sıralı olarak

Adım 6: Tuşuna bastıktan sonra Tamam. düğmesine basıldığında nihai çıktı gösterilecektir

Adım 7: Yanlış girerseniz KIMLIK veya Departman, aşağıdaki mesajı gösterecektir

Daha fazlasını okuyun: Excel'de Birden Çok Koşulla DÜŞEYARA Nasıl Yapılır (2 Yöntem)

4. VBA'da DÜŞEYARA Kullanarak Düğme ile Bilgi Bulma

Şimdi, kodu manuel olarak çalıştırmak yerine bir düğme yardımıyla bilgileri nasıl bulabileceğimizi göreceğiz. Yine, veri kümesi yukarıdaki ile aynı olacaktır.

Adım 1: İlk olarak Ekleme seçeneği altında Geliştirici sekmesi

Adım 2: Daha sonra Düğme seçeneğinden Ekleme

Adım 3: Düğmeyi ihtiyacınıza göre yerleştirin ve düğmenin adını verin

Adım 4: Şimdi düğmeye sağ tıklayın ve Makro Atama

Adım 5: Şimdi yeni bir makro oluşturun ve adını vlookup_function_4

Adım 6: Aşağıdaki kodu VBA konsoluna yazın ve Koşmak kod

Kod:

 Sub vlookup_function_4() Dim rng As Range, FinalResult As Variant, Table_Range As Range, LookupValue As Range Set rng = Sheets("Sheet4").Range("D15") Set Table_Range = Sheets("Sheet4").Range("B4:F11") Set LookupValue = Sheets("Sheet4").Range("D14") FinalResult = Application.WorksheetFunction.VLookup(LookupValue, Table_Range, 5, False) rng = FinalResult End Sub 

Adım 6: Şimdi herhangi bir kimlik girin ve düğmesine basın

Daha fazlasını okuyun: Excel'de Başka Bir Çalışma Sayfasındaki Değerleri Bulmak için VBA DÜŞEYARA Kullanımı

Hatırlanması Gerekenler

Yaygın Hatalar Gösterdiklerinde
1004 hata VBA vlookup kodu lookup_value değerini bulamadığında, 1004 hatası verecektir.
VLOOKUP İşlevi VBA'da Bulunamadı Vlookup işlevi Excel VBA'da WorksheetFunction kullanılarak çağrılabilir.
Hata İşleme vlookup işlevindeki hata bir Goto deyimi bir hata döndürürse.

Sonuç

Bunlar, aşağıdakileri kullanmanın bazı yollarıdır VLOOKUP Tüm yöntemleri ilgili örnekleriyle gösterdim, ancak başka birçok yineleme olabilir. Ayrıca kullanılan işlevlerin temellerini de tartıştım. Bunu başarmak için başka bir yönteminiz varsa, lütfen bizimle paylaşmaktan çekinmeyin.

Hugh West, sektörde 10 yılı aşkın deneyime sahip oldukça deneyimli bir Excel eğitmeni ve analistidir. Muhasebe ve Finans alanında lisans derecesine ve İşletme alanında yüksek lisans derecesine sahiptir. Hugh öğretme tutkusuna sahiptir ve takip etmesi ve anlaması kolay benzersiz bir öğretim yaklaşımı geliştirmiştir. Excel konusundaki uzman bilgisi, dünya çapında binlerce öğrencinin ve profesyonelin becerilerini geliştirmesine ve kariyerlerinde başarılı olmasına yardımcı olmuştur. Hugh, blogu aracılığıyla bilgisini dünyayla paylaşıyor, bireylerin ve işletmelerin tam potansiyellerine ulaşmalarına yardımcı olmak için ücretsiz Excel eğitimleri ve çevrimiçi eğitimler sunuyor.