.:UserFormdaki CheckBox ve ComboBox'lar ile Listview'de Filtre:..

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
.:CheckBox ve ComboBox'lar ile FİLTRE ve Listview'e Aktarma:..

Merhabalar.
Ekteki belgede açıklamaya çalıştım. UserForm ile ilgili birkaç hususta desteğe ihtiyacım var.

Kod-UserForm olayıyla yeni ilgilenmeye başladığımdan mevcut durumda kodlar oldukça karışık durumda, ancak

Açılan FORM ile ilgili biraz uğraştım ve epeyce karmaşık hale getirdim. Gerçi; veri kaydı, değiştir, sil işlemi sorunsuz gibi ancak bazı konuları beceremedim ve rastladığım form olaylarını da kendime uyarlayamadım.

Öncelikle UserForm1 üzerindeki CheckBox1 ile ilgili olmak üzere desteğe ihtiyacım var.

1) Olabiliyorsa, UserForm'a ait kodların bir bilen tarafından gözden geçirilmesi ve bu kadar karmaşıklıktan kurtulacak kod değişikliği önerisi rica ediyorum.

2) UserForm1 üzerindeki CheckBox1 seçili iken sol tarafta yer alan veri giriş-değişiklik işeminde kullandığım TextBox'lar ve ComboBox'ları bu kez Listview nesnesinde FİLTRELEME için kullanmak istiyorum ancak söylediğim gibi beceremedim.

3) Form üzerinde TextBox1'e tarih girişini Sayın AYHAN'dan alıntı olan Takvim Formu üzerinden yapmak istiyorum. Mevcut hali excel sayfasında hücreye tarih yazmak üzere kodlanmış durumda.

Destek olacak ustalara şimdiden teşekkürler.
 

Ekli dosyalar

Son düzenleme:

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
UserForm'da belki de Listview yerine ListBox kullanmalıydım ancak, ListBox'ta görüntü bakımından metin-sayı hizalama vs sorunu var diye bildiğim için Listview'i tercih ettim.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,992
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Listview nesnesi 64 bit versiyonlarda çalışmamaktadır. Bilginiz olsun.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Konu günceldir, ustalardan destek ricam devam ediyor.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,992
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Ömer bey,

Linkteki konuları irdeleyerek incelerseniz kod yazma tekniklerini öğrenebilirsiniz.

http://www.excel.web.tr/f128/

Formunuzu tasarladıktan sonra kodlarınızı adım adım yazarsanız karmaşadan kurtulabilirsiniz.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Sayın AYHAN, yönlendirme için teşekkürler ancak, zaten uğraşıp beceremeyince destek için konu açmıştım. Hala mevcut durum beni aşar durumda malesef. Zaten becermek için çabaladığım kodlardan belli oluyordur sanırım.

En azından listview filtreleme konusunda destek ricam devam ediyor.
Destek ricamın konusu: CheckBox1 seçiliyken; veri girişinde kullandığım TextBox ve ComboBox'ları filtreleme için kullanmak.

Ustalardan ilgilenen olursa sevinirim.
 
Katılım
6 Temmuz 2015
Mesajlar
926
Excel Vers. ve Dili
2003
Ömer Bey, Korhan Bey'in 3 nolu mesajını okudunuz mu acaba ? Sizinki 32 Bit mi ?
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
32 bit 64 bit konusunda hiçbir fikrim yok. Ancak, Listview UserForm Inıtalize olayında, kaydet-değiştir-sil işlemleri için halen çalışır durumda.
Ayrıca LİSTBOX şeklinde de değiştirebilirim, Listview'i tercih nedenim tamamen sütun hizalama (sayı -metin'de farklı olacak şekilde) imkanının varlığı.

Belgeyi küçük bir pastane işletmesi sahibi yakın arkadaşım için hazırlamaya çalışıyorum, tamamlayabilirsem epey faydalı olacak kendisine.
 
Katılım
6 Temmuz 2015
Mesajlar
926
Excel Vers. ve Dili
2003
Masaüstündeki bilgisayarım simgesine sağ tuş, özellikler = 32 Bit veya 64 Bit işletim sistemi.

Bahsettiğiniz özellikler çalıştığına göre sanırım Sizin sisteminiz 32 bit. Benim sistemim 64 bit olmasına rağmen, mahsuru yoksa dosyanızın mevcut halini görmek isterim doğrusu.
 

systran

Destek Ekibi
Destek Ekibi
Katılım
15 Aralık 2007
Mesajlar
1,669
Excel Vers. ve Dili
2021 PRO [TR]
benim tavsiyelerim:
1- Kodlarınızın anlaşılır olması için bu tarz projelerde blokları TAB veya boşluk tuşu kullanarak ayırt edebilirsiniz.
Kod:
if a=1 then
msgbox ""
end if 

[B]if a=1 then
    msgbox ""
end if
[/B]
2-nesnelerin adlarını muhakkak değiştirin.
command1, textbox1 yerine cmdKayıt, txtAdres şeklinde isimlendirmeler kullanın. hangi nesnenin ne için kullanıldığını kodlara bakarak anlarsınız.

3-Takvim userformunda hata var. (2015 Kasım seçip deneyin, 29 dan sonraki günler görünmüyor.)
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Estağfurullah, ne mahzuru, olur mu öyle şey.
Sizin altın üyelik olayını hep unutuyorum.
Buyurunuz dosya burada.

Bu arada baktım, 32 Bit işletim sistemi diyor, ofis programının durumunu bilemiyorum, bildiğim sadece 2013 versiyonu olduğu.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
benim tavsiyelerim:
1- Kodlarınızın anlaşılır olması için bu tarz projelerde blokları TAB veya boşluk tuşu kullanarak ayırt edebilirsiniz.
Kod:
if a=1 then
msgbox ""
end if 

[B]if a=1 then
    msgbox ""
end if
[/B]
2-nesnelerin adlarını muhakkak değiştirin.
command1, textbox1 yerine cmdKayıt, txtAdres şeklinde isimlendirmeler kullanın. hangi nesnenin ne için kullanıldığını kodlara bakarak anlarsınız.

3-Takvim userformunda hata var. (2015 Kasım seçip deneyin, 29 dan sonraki günler görünmüyor.)
Takvim User Formu Sayın AYHAN'dan alıntı idi ve sayfaya tarih yazmak için sorunsuz çalışıyordu, burada değişiklik yaptıysam sorun ondan olabilir.
Kod yazma tarzı işi ise yavaş yavaş düzeliyor, malum daha yeni yeni uğraşmaya başladım. Tavsiyeler için teşekkürler. Sağ olunuz.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Tekrar merhabalar Sayın kod ustalarım.
Elimden geldiğince, hatta gelmeyen konularda bile araştırarak soru soran üyelere destek vermeye çalışan bir üye olduğumuz malumdur.
Sayfa üzerinde işlemler yapan kodlar konusunda uğraşmaya başladım ancak, özellikle Userform olayları ile ilgili olarak kod oluşturma aşamasına geçmiş değilim.
Dolayısıyla; kendi ihtiyacımı gidermeyi beceremedim.
Örnek belgemdeki UserForm'da nesne adlandırmaları vs. bazı değişiklikler yaparak daha anlaşılır olmasına çalıştım.
Form üzerindeki nesneler vasıtasıyla sayfada FİLTRELEME ve Listview'e filtrelenmiş haliyle aktarma konusunda destek ricam halen geçerli.
İlgilenecek ustalara şimdiden teşekkürler.

Dosyaya buradan da ulaşılabilir.
.
 

Ekli dosyalar

Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,992
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Listview nesnesi bende çalışmadığı için yardımcı olamıyorum. (64 bit sebebiyle)
 

systran

Destek Ekibi
Destek Ekibi
Katılım
15 Aralık 2007
Mesajlar
1,669
Excel Vers. ve Dili
2021 PRO [TR]
örnek dosyayı inceleyiniz.
https://drive.google.com/file/d/0By_vlGkmFxCCeUZ3aGYzQnNFU28/view?usp=sharing

Formu çalıştırıp Özet Bilgi kutusunu işaretleyin.
daha sonra işlem türü ve grup/ alt grup) seçimini yapın.
sadece bu 2 adıma filtre ilave var. ekleme yapılan yerleri kodda belirttim.
comboboxların hem başında, hem de sonunda filtre kontrolü var dikkat et.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Sayın systran (kusura bakmayın isim bilmediğimden hiç hazzetmediğim rumuz ile hitap etmek durumundayım) bilgisayar başına geçince bakacağım, cevap yazdığınızı gördüm ve bilgisayar başına geçip kontrol etmek için sabırsızlanmaktayım.
Eminim sorunsuzdur ve bakınca geri bildirimde bulunurum.
Şimdiden teşekkürler.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
örnek dosyayı inceleyiniz.
https://drive.google.com/file/d/0By_vlGkmFxCCeUZ3aGYzQnNFU28/view?usp=sharing

Formu çalıştırıp Özet Bilgi kutusunu işaretleyin.
daha sonra işlem türü ve grup/ alt grup) seçimini yapın.
sadece bu 2 adıma filtre ilave var. ekleme yapılan yerleri kodda belirttim.
comboboxların hem başında, hem de sonunda filtre kontrolü var dikkat et.
Merhabalar.
Sonunda bilgisayar başına geçebildim.
Sayın adaşım, ilgi ve destek için teşekkürler.

Birkaç deneme yaptım.
Belki ben bir şeyi yanlış yapıyorum ama sanırım sadece ilk iki açılır liste (GİDERLER/GELİRLER-tür- ile bas1-1.seviye başlık- ) için çalışan bir yapı oluştu.
Doğru mudur?
Mevcut kayıtlara göre GİDERLER->Şube İç Giderleri seçildiğinde ona göre filtreleme yapılıp Listview'e de sadece bunlar listeleniyor.
Bir sonraki açılır listeden (bas2-2'ncci seviye başlık-) Apartman Giderlerini seçtiğimde; listedeki Fazla Mesai Ücretleri hala görüntülenmeye devam ediyor.
Sanırım diğer aşamalar için de ilave yapılması lazım değil mi?
Eğer öyleyse elbette eklediğiniz kodlara bakarak ilaveler yapmaya çalıacağım.

Peki yaptığınızı gördükten sonra aklıma gelen seçenek; sağdaki onay kutusu işaretlendiğinde artık tüm açılır listeler, liste sayfasından veri almak yerine kayit sayfasından veri almaya başlasa daha pratik olur mu ne dersiniz acaba? Hem böylece sadece kayıtlı seçenekler görüntülenmiş olur.
Yani onay kutusu;
-- işaretli değilken nesneler liste sayfasını kaynak olarak kullanıp kayit sayfasına veri kaydetmek,
-- işaretli iken ise nesneler kayit sayfasını kaynak olarak kullanıp sadece mevcut kayıtlar üzerinde filtreleme işlemi yapmak,
şeklinde çalıştırılabilir mi?
Bu yaklaşım çok köklü değişikliği gerektiriyor mu pek bilemiyorum ama düşünülebilir bence.

"Hem başında hem sonunda filtre kontrolü var" derken; kodlara bakarken dikkat etmem için mi söylediniz anlayamadım.

Sağ olunuz, iyi geceler dilerim.
 

systran

Destek Ekibi
Destek Ekibi
Katılım
15 Aralık 2007
Mesajlar
1,669
Excel Vers. ve Dili
2021 PRO [TR]
1-evet sadece ilk 2 adıma filtre eklediğimi söylemiştim. "sadece bu 2 adıma filtre ilave var."
2-açıkçası liste sayfasına hiç bakmadım. hem işaretli hemde işaretsiz durumlarda da liste sayfasına baksın, kayıt sayfasına bakmasına gerek kalmıyor galiba???
3- evet. son satırlardaki kodlar gözden kaçmasın, aynı mantığı diğer seçeneklere uygularken dikkat edin diye.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Eyvallah, ben bu istikamette kodlara bakayım bir müddet.
Gerçi bir hafta boyunca iş için İstanbul'dayım, o yüzden bu hafta biraz zor ama uğraşırım artık fırsat buldukça.
Fikir ve destek için sağ olunuz. Sıkıntı duyarsam konu sayfasına yazarım artık.
Görüşmek dileğiyle.
 
Üst