• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Textboxa göre listboxu süzme

Katılım
9 Nisan 2007
Mesajlar
75
Excel Vers. ve Dili
2010
Merhaba arkadaşlar
ekteki dosyamda tek yapamadığım yer listboxun üstündeki textbox a girilen harfe göre otomatik süz yapması gerekiyor.

şimdi yapamadığım nokta şu; süz ü yapıyorum bu sefer diğer ayarlar bozuluyor. şuanki ayarları işimi göruyo ama bu seferde harfe duyarlı süz yapamıyorum. yani süz yapınca tek veya çift tıklamayla verileri textboxlara getirip değişiklik yapmak, verisi olmayanlara veri girmek istiyorum. yeni kayıt olmayacak, hali hazırdaki kayıtlar üzerinde değişiklik yapacağım.

şuan useform güzel çalışıyor bir noktaya kadar getirdim ama ana dosyamda liste sayım 100 ün üzerinde ve listede araması çok zor oluyor.
Süz konusunda yardımcı olabilirsek sevinirim. yani süz yapınca aynı zamanda exell tablosunuda süzmeli veya süz yapınca hangi isim geldi ise o ismin satırına veri girebilmeliyim.

yardımlarınızı rica ediyorum
saygılarımla
 

Ekli dosyalar

süz yapınca hangi isim geldi ise o ismin satırına veri girebilmeliyim.

Yanlış bilmiyorsam ; süzülmüş veriye ek veri giremezsiniz . Veri eklemek için satırı bir benzersiz özelliğine dayanarak BUL ile bir form üzerinde bulmanız gerek. Bundan sonra değiştir özelliği ile istediğiniz şekilde veri ekler ya da onarabilirsiniz .

Sitede bul sil değiştir kelimelerini aratınız, çok fazla örnek var.
 
arkadaşlar neredeyse incelemediğim dosya kalmadı konuyu araştırmadan direk eklemi değilim. Bir yerlerde hep hata alıyorum, süzmeyi yapsam süzdüğümü tıkladığım zaman sıralama anlamsız geliyor. Örnek vermek gerekirse ekteki dosyada mesela süzme olayını yaptım ama satırlar anlamsız geliyor. Misal Bülent sarıçam ismini süzdürdüm. süzdürdüğüm bülent sarıçam ismine tıkladığımda 9 nolu satırdaki defter bilgilerini textboxlara getirtemiyorum. süzdürdüğüm zaman ilk sıradaki bilgiler geliyor. süzdürmeden bülent sarıçam ismine tıkladığımda ise textboxlara 9 nolu satırdaki bilgiler gayet güzel geliyor. Yani bu listede yeni kayıt satır vs eklenmeyecek silme işlemi olayacak. sadece daha önce isimleri olan exel listesinde düzeltme butonu ile (listede ismi kaydet butonudur) süzdürdüğüm isimlere ait satırlarda bilgi değişikliği yapılacak. Yarına yetiştirmem lazım oldukça yüklü veri girişi yapılacak. Bir üstadımdan bu konuda yardım istiyorum. kendi bilgim ve becerimle buraya kadar getirtebildim. çok basit bir süzme ve bu süz işlemini takiben süzülen ismin exell listesindeki satırında düzenleme yapılması yeterli olacak. Umarım anlatabilmişimdir derdimi

yardımlarınızı rica ediyorum arkadaşlar. Yani anlayan arkadaşlar beni başka bir linke dosyaya vs yönlendirmek yerine bu dosyada nasıl bir kod eklemem konusunda bilgi paylaşabilirse sevinirim.
 

Ekli dosyalar

Ömer abi merhaba
öncelikle çok teşekkür ederim. Allah razı olsun. Dosyanın ve süz'ün çalışma şekli tam istediğim gibi bu şekilde olması yeterli benim için.

Dosyanın başka amacı yok satır seçilmesine de gerek yok. Ancak XX sayfası, dosyanın çalışması için çok elzem değilse XX sayfası olmadan bir düzenleme yapabilir miyiz yani kaldırabilir miyiz bu sayfayı abi. Ekolarak Listboxun kaynağını LİSTE sayfasından da çekebiliriz. (örnek dosyada bu sayfayı eklememişim ama ana dosyamda Bütün verilerin isim listesinin vs çekildiği LİSTE isimli bir sayfam var) . Hatta bu mesaja senin yaptığın düzenlemelerle LİSTE sayfasını da ekleyerek dosyayı ekliyorum. 2019 2020 ... yılarında da kullanılacağı için listeyi ana liste den çekmesi daha doğru mu olur diye düşünüyorum.

Birde abi son olarak çok elzem değil ama ciddi kolaylık olacak, textbox15 te başka textboxa gerek olmadan süzdürme işlemini ismin yanı sıra numaradan da yapabilir miyiz mümkün müdür ?
 

Ekli dosyalar

Alternatif olsun diye farklı iki adet userform ekliyorum irdeleyiniz.
 

Ekli dosyalar

Merhaba.

Dosya ekte.
.

abi senin dosyada süz işlemi yapınca exell tablosunda süzme olayı 4.satırdan başlıyo yani ilk 3 satırın düzenini bozmuyor. Olması gerekende budur. Ama benim ana dosyaya aynı kodları ekliyorum 2018 DT sayfasında 2. satırdan itibaren süz sonuçlarını veriyor ve haliyle ilk 3 satırın düzenini bozuyor. Sendeki gibi olması lazım. biristisnamı felan mı var ? Ben benim dosyaya kodları aktarırken bir şeyimi kaçıyorum gözden ?
 
Forumda sorulan sorulara benim gibi fazlaca destek olanların ortak isteği: soruların "gerçek belgeyle aynı yapıda örnek belge" üzerinden sorulması.
Buna ilişkin kısa açıklamayı da cevaplarımın altındaki İMZA bölümünde bu nedenle yazdım.

Önce, varsa sayfada mevcut filtreyi kaldırın.
Başlık satırlarının konumu gerçek belgenizde farklı ise (örneğin başlık bölmünün en alt satırı 2'nci satır ise) Userform'un kod kısmını açıp;
-- CTRL+H tuşlarına basın, aranan kısmına A3, yerine yazılacak kısmına A2 yazıp "tümünü değiştir"i seçin,
-- Tekrar CTRL+H tuşlarına basın bu kez aranan kısmına A4, yerine yazılacak kısmına A3 yazıp "tümünü değiştir"i seçin.

Bu şekilde çözülmesi lazım.
.
 
Abi imzandaki ikazın bilincindeyim ancak ana dosyamda bu formun çalışmasını gerektiren sayfa ile ilgili her şey aynı, ana dosyamda 40-50 adet sayfa ve hemen hemen her sayfada mükelleflerin kişisel bilgileri var. hepsini silip hazırlamam başlı başına bir olay. Hassasiyeti anlıyorum. Sorunda zaten filtrelemedenmiş senin ikazına istinaden filtreyi kaldırınca düzeldi şuan.
çok teşekkür ederim. Şayet son olarak XX sayfasını kullanmadan aynı şekilde çalışabilmesi için bir çözüm bulabilir miyiz. Çok önemli değil bu şekilde de işimi göruyor ama yarın bi gün bu XX sayfasının işe yaradığını unutup bu sayfa neyin nesi deyip siler miyim diye düşünüyorum. yani 2018 DT sayfasındaki form kendi başına buyruk çalışırsa daha iyi olur diye düşünüyorum. Bununla ilgili bişey yapabilirsek sevinirim olmuyorsa da can sağlığı
 
Tekrar merhaba.

En iyisi şöyle yapın.
-- UserForm1'in Initialize kod blokunun başına (kod başlığından hemen sonra ve sonsat = ..... satırından önce) aşağıdaki satırı yapıştırın.
Kod:
Call [B]XX_SAYFA_KONTROL[/B]
-- Varsa mevcut MODÜLlerden birine, yoksa VBA ekranı üzerinden belgeye bir MODÜL ekleyip bu modüle aşağıdaki kod'u yapıştırın.
.
Kod:
[B]Sub XX_SAYFA_KONTROL()[/B]
For Each shf In ActiveWorkbook.Worksheets
    If shf.Name = "XX" Then xvar = xvar + 1
Next
Application.ScreenUpdating = False
If xvar = 0 Then
    Sheets.Add After:=ActiveSheet
    ActiveSheet.Name = "XX"
End If
    Sheets("XX").Visible = False
Application.ScreenUpdating = True
[B]End Sub[/B]
Böylece Userform açılırken XX adlı sayfanın varlığı kontrol edilir, yoksa bu adla bir sayfa eklenir ve görünür durumda ise XX sayfası gizlenir.
Siz de bu sayfanın varlığını yokluğunu düşünmeden belgenizi kullanabilirsiniz, bu sayfa da hep gizli olarak kalır.
.
 
tamamdır abi teşekkür ederim
 
Geri
Üst