textbox yada combobox ile cümle içi kelime arama

Katılım
21 Eylül 2005
Mesajlar
25
merhabalar
listbox taki firmalarda herhangi bi kelime araması yapılabilir mi?
örneğin TextBox a "MARKET" yazdığımda sadece içerisinde MARKET kelimesi geçen verileri sıralayacak, basında ortasında yada sonunda farketmez

yada fatura numarasını yazdığımda direkt o faturaya gidecek

yardımcı olursanız sevinirim
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Arama isimli textboxa aşağıdaki kodu yazarsanız, textboxa yazdığınız kelimeye göre listboxa yükleme yapacaktır.

[vb:1:75e10a3511]Private Sub arama_Change()
Application.ScreenUpdating = False
On Error Resume Next
[l:s].ClearContents
[a1:b1].AutoFilter
Selection.AutoFilter Field:=2, Criteria1:="=*" & arama & "*"
[a1].CurrentRegion.Copy
[l1].PasteSpecial
[a1:b1].AutoFilter
ListBox1.RowSource = "faturalar!" & "L2" & ":" & "S" & [l65536].End(3).Row
End Sub
[/vb:1:75e10a3511]
 
Katılım
21 Eylül 2005
Mesajlar
25
çok tşk. ederim sn. leventm
bişey daha sorsam fazla ileri gitmiş olmam umarım
tutara göre yada fatura numarasına görede uyarlayabilir miyiz bu aramayı ? :oops:
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
İlk verdiğim kodu aşağıdaki ile değiştirerek deneyin. Hangi checkbox işaretli ise onun bulunduğu sütunda arama yapılır. Eğer checkboxlardan hiçbiri seçili değilse ALTKURUMA göre arama yapılır.

Not:Her seferinde sadece bir checkbox seçili olmalıdır. Bu sebeple check box yerine optionbutton kullanmanızı öneririm.

[vb:1:e3cee6649a]Private Sub arama_Change()
[l2:s65536].ClearContents
sut = 2
If CheckBox1.Value = True Then sut = 1
If CheckBox2.Value = True Then sut = 3
If CheckBox3.Value = True Then sut = 5
For a = 2 To [a65536].End(3).Row
say = WorksheetFunction.CountIf(Cells(a, sut), "*" & arama & "*")
If sut <> 2 Then say = WorksheetFunction.CountIf(Cells(a, sut), arama * 1)
If say > 0 Then
sat = [l65536].End(3).Row + 1
For b = 1 To 8
Cells(sat, b + 11) = Cells(a, b)
Next
End If
Next
ListBox1.RowSource = "faturalar!" & "L2" & ":" & "S" & [l65536].End(3).Row
End Sub
[/vb:1:e3cee6649a]
 
Üst