• DİKKAT

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

Listboxdaki Kolon sayısının adeti?

Arkadaşlar merhabalar

Forumda bir kaç gündür yazdığım problemimle ilgili olarak arama yaparken bu konuya denk geldim. Sanırım çözüm yolu bu. Ancak Evren Hocam'ın kodlarını uyarlamaya çalıştığımda netice alamıyorum. İlgilenmenizi rica ederim. İyi çalışmalar...
 
Son düzenleme:
cv takip

Elinize sağlık çok güzel olmuş
yanlız bence orada arama butonu ve
bölüm bazındada gözükse iyi olur diye tahmin ediyorum
mesela muhasebe bölümüne tıkladığımızda kimler başvurmuş onları görebilirmiyiz.
 
arkadaşlar yardımcı olabilecek kimse yok mu ?

dosyanızabir bakarmısınız?
Başvuru formunda textboxlara girdiğiniz verilerire göre arama yapıyor.
döngüyü 2 den başlattım.Siz 3 ten başlatmışsınız .Şimdilik bir tek bunu gördüm ve düzelttim.Şimdi çalışıyor.:cool:
 
Evren bey alakanıza teşekkür ederim.

1.ci (ALAN40) text çalışıyor sadece. diğerlerine herhangi bir şey yazdığımda liste boşalıyor. bu arada başlık satırı da yok oluyor. benim yapmak istediğim bazı alanlara göre süzme yapabilmek.
ALAN40 sadece isim arama yapmak için kullanılacak ama diğer alanlar elemanların özelliklerine göre arama yapacak
mesela ALAN46 (6.cı text) Muhasebe yazdığım zaman (Ön muhasebe) olarak kaydedilmiş veriyi de gösterebilmeli.

hangi text'in hangi kolonda bilgi arayacağını aşağıya yazıyorum hocam. Umarım anlatabilmişimdir.

If LCase(Replace(Replace(Cells(i, "b").Value, "I", "ı"), "İ", "i")) Like LCase(ALAN40.Value & "*") _
And LCase(Replace(Replace(Cells(i, "t").Value, "I", "ı"), "İ", "i")) Like LCase(ALAN41.Value & "*") _
And LCase(Replace(Replace(Cells(i, "u").Value, "I", "ı"), "İ", "i")) Like LCase(ALAN42.Value & "*") _
And LCase(Replace(Replace(Cells(i, "x").Value, "I", "ı"), "İ", "i")) Like LCase(ALAN43.Value & "*") _
And LCase(Replace(Replace(Cells(i, "y").Value, "I", "ı"), "İ", "i")) Like LCase(ALAN44.Value & "*") _
And LCase(Replace(Replace(Cells(i, "ak").Value, "I", "ı"), "İ", "i")) Like LCase(ALAN45.Value & "*") _
And LCase(Replace(Replace(Cells(i, "al").Value, "I", "ı"), "İ", "i")) Like LCase(ALAN46.Value & "*") _
And LCase(Replace(Replace(Cells(i, "am").Value, "I", "ı"), "İ", "i")) Like LCase(ALAN47.Value & "*") Then
 
Başlık satırı sadece listbox'a rowsource ile veri alırsanız ve columnHeadrs ı true yaparsanız gözükür .Diğer veri alma yöntemlerinde başlık satırı gözükmez.İlla başlık satırı olsun diyorsanız listviewi kullanmanızı öneririrm.Ama ona alacağınız veriler listboxa bu şekilde dizi yöntemi le aldığınız verilerie göre çok dağa ağır çalışır.
Ben denedim diğer textboxlarda Bilgisyar bildgisi olanını ve ad soyada olanını birlikte denedim .mesala 2nci sıradaki adı alan40'a yazdım diğerinide Bilgisyar bilgisi textbox'ına ms yazdım kod gayet güzel çalıştı.Yani hem adda hemde Bilgisyar bilgisi textboxlarında kod gayet iyi çalıştı.
Belkide siz hangi textbox'ın hangi veriyi aldığın bilmiyorsunuz ve o textboxa o sütunla ilgili olmayan bir veri yazıyorsunuzdur.Ondan boş görüyorsunuzdur listboxı
:cool:
 
"Başlık satırı sadece listbox'a rowsource ile veri alırsanız ve columnHeadrs ı true yaparsanız gözükür " Evet hocam bu kısım bir an aklımdan gitti.


Diğer kısımlar gayet düzgün çalışıyor. bilgisayar bilgisi ile ilgili aratma yapmadan önce dil bilgisi ile ilgili (verilerde olmayan) bir veri arattım ve sonuç alamayınca hemen yazdım. Dikkatsizliğim için özür, yardımınız için teşekkür ederim. Çok makbule geçti hayırlı akşamlar dilerim.
 
Hocam Affınıza sığınarak;

Form ilk açıldığında

listbox'a bu kodlarla verileri alıyoruz.

Private Sub UserForm_Initialize()
Sheets("DataPers").Select
Liste.ColumnCount = 40
Liste.ColumnHeads = True
Liste.ColumnWidths = "35;90;70;70;30;30;40;40;150;90;70;70;70;20;20;40;20;90;90;90;90;90;90;90;90;90;90;150;150;150;50;150;150;100;100;30;100;100;100;260"

Liste.RowSource = "a2:an" & [a65536].End(3).Row


sizin kodlarla da aramayı gerçekleriyoruz.

bu durumda benim listbox'taki bilgiyi textboxlara alırken aşağıda kullandığım kod hata verdi. (Could not get the Column property.Invalid argument)

Bu durumda aşağıdaki kodlarda nasıl bir değişiklik yapılması gerekir.

Private Sub Liste_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
ALAN01 = Liste.Column(1)
.
.
.
.
ALAN39 = Liste.Column(39) (bu kısımda hata verdi)
Range("a2:AN" & [a65536].End(3).Row).Interior.ColorIndex = 0
sat = Liste.ListIndex + 2
Range("A" & sat & ":AN" & sat).Interior.ColorIndex = 0
End Sub
 
Arama makrosunu aşağıdaki ile değiştiriniz.:cool:
Kod:
Sub arama()
Dim i As Long, a As Long, k As Byte, deg As Variant
Liste.RowSource = ""
ReDim myarr(1 To [B][COLOR="Red"]40[/COLOR][/B], 1 To 1)
For i = 2 To Cells(65536, "B").End(xlUp).Row

    If LCase(Replace(Replace(Cells(i, "b").Value, "I", "ı"), "İ", "i")) Like LCase(ALAN40.Value & "*") _
    And LCase(Replace(Replace(Cells(i, "t").Value, "I", "ı"), "İ", "i")) Like LCase(ALAN41.Value & "*") _
    And LCase(Replace(Replace(Cells(i, "u").Value, "I", "ı"), "İ", "i")) Like LCase(ALAN42.Value & "*") _
    And LCase(Replace(Replace(Cells(i, "x").Value, "I", "ı"), "İ", "i")) Like LCase(ALAN43.Value & "*") _
    And LCase(Replace(Replace(Cells(i, "y").Value, "I", "ı"), "İ", "i")) Like LCase(ALAN44.Value & "*") _
    And LCase(Replace(Replace(Cells(i, "ak").Value, "I", "ı"), "İ", "i")) Like LCase(ALAN45.Value & "*") _
    And LCase(Replace(Replace(Cells(i, "al").Value, "I", "ı"), "İ", "i")) Like LCase(ALAN46.Value & "*") _
    And LCase(Replace(Replace(Cells(i, "am").Value, "I", "ı"), "İ", "i")) Like LCase(ALAN47.Value & "*") Then
        
        a = a + 1
        ReDim Preserve myarr(1 To [B][COLOR="red"]40[/COLOR][/B], 1 To a)
        For k = 1 To [B][COLOR="red"]40[/COLOR][/B]
            myarr(k, a) = Cells(i, k).Value
        Next k
        If a = 1 Then
            deg = Cells(i, 10).Value
            ElseIf Cells(i, 10).Value < deg Then
            deg = Cells(i, 10).Value
        End If
    End If
Next i
If a > 0 Then Liste.Column = myarr
Erase myarr

End Sub
 
&#199;ok te&#351;ekk&#252;r ediyorum hocam.
Tamamd&#305;r.
 
Geri
Üst