Listboxdaki Kolon sayısının adeti?

Katılım
28 Haziran 2007
Mesajlar
246
Excel Vers. ve Dili
Excel 2003 Tr
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:
Katılım
20 Temmuz 2007
Mesajlar
45
Excel Vers. ve Dili
offıce 2003
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.
 
Katılım
28 Haziran 2007
Mesajlar
246
Excel Vers. ve Dili
Excel 2003 Tr
ustalarım 22 nolu mesaj konusunda yardım bekliyorum
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
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:
 
Katılım
28 Haziran 2007
Mesajlar
246
Excel Vers. ve Dili
Excel 2003 Tr
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
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
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:
 
Katılım
28 Haziran 2007
Mesajlar
246
Excel Vers. ve Dili
Excel 2003 Tr
"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.
 
Katılım
28 Haziran 2007
Mesajlar
246
Excel Vers. ve Dili
Excel 2003 Tr
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
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
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
 
Katılım
28 Haziran 2007
Mesajlar
246
Excel Vers. ve Dili
Excel 2003 Tr
&#199;ok te&#351;ekk&#252;r ediyorum hocam.
Tamamd&#305;r.
 
Üst