AccessTr.neT

Tam Versiyon: Listboxda Sayfa İsimlerini Filtreleme
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Merhaba Arkadaşlar.
Eklediğim Excel uygulamasında Feraz ve Berduş Hocalarımın yazdığı kodlarla ComboBox1 ve girdiğim ilk har ile ListBox1 kişileri filtreliyordum.
ComboBox1 silip yerine TextBox1 ekledim ve TextBox1 e girdiğim harfe göre değil, TextBox1e girdiğim kelime ile baştan sona kadar arama yapsın. ListBox1 de filtreleme yapsın.

Bu konuda yardımlarınıza ihtiyacım var. Saygılarımla.
Bir önceki konunuzda @feraz beyin 11. mesajindaki  kod işinize yaramıyor mu?

Ayrıca eklediğiniz örnekte sorgu kullanılan çalışmanın kodu var ama eklediğiniz calismada ilgili kodun ihtiyaci olan TmpSilme sayfası eklenmemiş. Hangi yapıyı kullanmak istiyorsunuz? O konudaki Örnek çalışmaları indirip inceleyerek hangisinin size uygun olduğuna karar vermelisiniz.
Teşekkürler Hocam ellerinize sağlık. 
Hocam @feraz Hocamın 11. mesajındaki kodu uyguladım sorunum hal oldu.

@feraz Hocamı da kutluyorum destek elemanı olduğu için. 

Hocam konuyu taşıyabilirsiniz. Saygılarımla.
dilerim aşağıdaki kodlar işinize yarar
modül başlangıcına eklenecek kodlar
Option Compare Text
Const Ekleme As String = "|ŞABLON|Sayfa1|liste|"
UserForm_Initialize kodu
Private Sub UserForm_Initialize()
Dim syf As Worksheet, k As Byte

Me.ListBox1.Clear

'ListBox veri ekle'
For Each syf In Worksheets
If InStr(1, Ekleme, "|" & syf.Name & "|", 1) = 0 Then ListBox1.AddItem syf.Name
Next syf
listeSirala
End Sub
TextBox1_Change kodu
Private Sub TextBox1_Change()
Dim syf As Worksheet, k As Byte
Me.ListBox1.Clear
For Each syf In Worksheets
'ListBox daki listeyi görüntüleme'
' If InStr(1, Ekleme, "|" & syf.Name & "|", 1) = 0 And InStr(1, syf.Name, Me.TextBox1.Text) > 0 Then ListBox1.AddItem syf.Name
If InStr(1, Ekleme, "|" & syf.Name & "|", 1) = 0 And syf.Name Like "*" & Me.TextBox1.Text & "*" Then ListBox1.AddItem syf.Name
Next syf
listeSirala
End Sub
Sıralama fonksiyonu
Sub listeSirala()
Dim vaItems As Variant
Dim i As Long, j As Long
Dim vTemp As Variant

'Put the items in a variant array
vaItems = Me.ListBox1.List

'Steal code from John Walkenbach’s Excel Power Programming
'with Vba to sort the array
For i = LBound(vaItems, 1) To UBound(vaItems, 1) - 1
For j = i + 1 To UBound(vaItems, 1)
If vaItems(i, 0) > vaItems(j, 0) Then
vTemp = vaItems(i, 0)
vaItems(i, 0) = vaItems(j, 0)
vaItems(j, 0) = vTemp
End If
Next j
Next i

'Clear the listbox
Me.ListBox1.Clear

'Add the sorted array back to the listbox
For i = LBound(vaItems, 1) To UBound(vaItems, 1)
Me.ListBox1.AddItem vaItems(i, 0)
Next i
End Sub
Çok Teşekkürler Hocam ellerinize sağlık. 

Hocam konuyu taşıyabilirsiniz. Saygılarımla.