Dosya simgesi

ListBox Kullanarak Arama Yapma

ListBox Kullanarak Arama Yapma
Bu dosya, bir hücre aralığındaki öğelerin UserForm üzerindeki ListBox'ta listelenmesini ve metin kutusuna yazılan ifadeyle aranmasını gösteren makrolu bir örnektir. Üç farklı arama yöntemi aynı formda sunulur: yazdıkça arama, joker karakterli arama ve otomatik tamamlamalı arama.

Dosya makro içerir (.xlsm); açarken makroları etkinleştirmeniz gerekir.

Dosyanın içeriği​

  • ListBoxItems: C3:C27 aralığında "Main List of Items" başlığı ve altında ay adları (January, February, August, September, October, November) ile deneme amaçlı metinler bulunur. ListBox bu listeyi C4 hücresinden başlayarak okur.
  • UserForm1: LBItemsToMatch adlı ListBox, TxtSearchFor ve TxtTypeAhead metin kutuları, iki arama düğmesi ve çıkış düğmesi (CmdExit) içerir.
Çalışma sayfasında formülsüz bir liste yer alır; asıl işlevi VBA kodu yürütür.

Makrolar​

  • InitUserForm1: ListBoxItems sayfasını etkinleştirir, C4 hücresinden başlayan bölgenin satır sayısını bulur ve ListBox'ın RowSource özelliğine atayarak formu açar. Sayfadaki düğme bu makroyu çalıştırır.
  • SearchForText: TxtSearchFor kutusuna yazılan her karakterde ListBox'ta eşleşen öğeye gider; ilk harf eşleşmezse seçimi listenin başına alır.
  • WildCardSearch: TxtSearchFor içindeki metni öğelerin herhangi bir yerinde arar ve seçili öğeden sonraki ilk eşleşmeyi seçer. Eşleşme yoksa seçim kaldırılır ve uyarı sesi çalar.
  • WildCardSearch2: Aynı mantıkla TxtTypeAhead kutusundaki metni arar; eşleşme yoksa ilk öğeye döner.
  • TextTypeAhead: TxtTypeAhead kutusuna yazılan metinle başlayan ilk öğeyi seçer ve kalan karakterleri seçili halde ekleyerek metni otomatik tamamlar. Silme sırasında tamamlama yapılmaz.
  • CmdExit_Click: Formu kapatır.
Kodda dosya silme veya dışarıya bağlantı işlemi yoktur.

Kullanılan formüller​

Çalışma sayfasında formül yoktur. Aramalar VBA içinde Application.Match fonksiyonuyla ve "*" joker karakteriyle yapılır; modüllerdeki Option Compare Text ifadesi sayesinde arama büyük/küçük harf ayrımı yapmaz.

Nasıl kullanılır​

  1. Dosyayı açın ve makroları etkinleştirin.
  2. ListBoxItems sayfasındaki düğmeye tıklayarak formu açın.
  3. Yazdıkça aramak için TxtSearchFor kutusuna metin yazın; otomatik tamamlama için TxtTypeAhead kutusunu kullanın.
  4. Metnin öğenin herhangi bir yerinde aranması için ilgili düğmeye basın; sonraki eşleşmeye geçmek için tekrar basın.
  5. Kendi listenizi kullanmak için C4 hücresinden itibaren aşağı doğru öğeleri yazın.

ExcelDepo tarafından daha fazla dosya

Detaylar
Yazar
ExcelDepo
İndirme
2
Gösterim
200
İlk sürüm
Güncel
SHA-256
2eee2b4ac16335ca47bd140c3484d8f147736c26689f27593751bfe6cb014810

Puanlar

0.00 Oylama 0 İnceleme
Geri
Üst