1. sayfa (Toplam 1 sayfa)
Metin Kutusu ile filtreleme
Gönderilme zamanı: 04 Kas 2020, 12:01
gönderen nadir
Sayfa üzerine eklediğim metin kutusu ile B6:C510 arasını makro ile filtrelemek istiyorum. Metin kutusuna örneğin Ali yazdığımda ALİ ile başlayanları listelesin.
Re: Metin Kutusu ile filtreleme
Gönderilme zamanı: 06 Kas 2020, 09:20
gönderen Hamurcu
Merhaba,
Bu isteğini hiç makro yazmadan Standart Süzgeç ile halledebilirsin.
- suzgec
- standard suzgec.png (28.78 KiB) 4446 kere görüntülendi
Re: Metin Kutusu ile filtreleme
Gönderilme zamanı: 06 Kas 2020, 09:42
gönderen nadir
Onu denedim aslında.. Ama daha pratik olması bakımından makro ile istemiştim.
Re: Metin Kutusu ile filtreleme
Gönderilme zamanı: 06 Kas 2020, 10:28
gönderen Hamurcu
Sanırım aşağıdaki kod işini görür.
Kod: Tümünü seç
sub Filtrele()
dim Sayfa as object, FiltreMetni as object
dim FiltrelenecekBolge as object, FiltreParametreleri as object
dim FiltrelenecekSutun(0) As New com.sun.star.sheet.TableFilterField
Sayfa = thiscomponent.sheets.getByName("Çizelge1")
FiltreMetni = Sayfa.drawPage.Forms.getByName("Form").getByName("Metin Kutusu 1")
FiltrelenecekBolge = Sayfa.getCellRangeByName("a5:c150")
FiltreParametreleri = FiltrelenecekBolge.createFilterDescriptor(true)
FiltrelenecekBolge.filter(FiltreParametreleri)
with FiltrelenecekSutun(0) ' (0) ilk filtre parametrelerini tanimlar. Ikincisi icin (1) ve devam etmelidir.
.Field = 1 ' B Sutununa gore filtrelemesi icin 1 giriliyor (0-->A sutunu demek)
.IsNumeric = false ' Metne gore filtrelemek icin False giriliyor. Sayisal filtreleme icin True girilmeli
.Operator = com.sun.star.sheet.FilterOperator.EQUAL
.StringValue = ".*" & FiltreMetni.text & ".*"
end with
with FiltreParametreleri
.ContainsHeader = true
.UseRegularExpressions = true
.setFilterFields(FiltrelenecekSutun())
end with
FiltrelenecekBolge.filter(FiltreParametreleri)
end sub
Re: Metin Kutusu ile filtreleme
Gönderilme zamanı: 06 Kas 2020, 11:34
gönderen nadir
FiltreMetni = Sayfa.drawPage.Forms.getByName("Form").getByName("Metin Kutusu 1")
...satırında
BASIC çalışma zamanı hatası "1" alıyorum.
Re: Metin Kutusu ile filtreleme
Gönderilme zamanı: 06 Kas 2020, 16:47
gönderen Hamurcu
Sayfaya koyduğun Metin Kutusunun adı farklıdır sende ondan hata alıyorsundur.
Ben standart bir metin kutusu koydum ve adı otomatik olarak "Metin Kutusu 1"
Sen bu ismi kendine göre uygun şekilde değiştirmelisin.
Re: Metin Kutusu ile filtreleme
Gönderilme zamanı: 09 Kas 2020, 09:04
gönderen nadir
Sayın Hamurcu, Change olayına yazabilir miyiz. Google tarzı, ararken (yazarken) listelesin.
Re: Metin Kutusu ile filtreleme
Gönderilme zamanı: 10 Kas 2020, 15:45
gönderen Hamurcu
Sayfadaki veriler az olduğunda sorun olmaz ama binlerce satır veri olursa her harfe bastığında yeniden hesaplayacağı için takılmalar oluşacaktır.