• DİKKAT

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

Listbox ile Sayfalarda Ara Makrosunda Hata alıyorum.

Katılım
9 Ocak 2011
Mesajlar
354
Excel Vers. ve Dili
2007 Türkçe
Merhaba ekte hazırladığım dosyada Buton ile Sayfalarda Arama yapabiliyorum ama Listbox da bulunan veriye tıkladığımda
verinin bulunduğu hücreye gitmesi gerekirken hata uyarısı alıyorum.
Bir de Listbox da Tarih Formatı için denemeler yaptım Kod'da deAktif olarak var ama oda hata veriyor.

Yardımcı olacaklara şimdiden teşekkürler.
 

Ekli dosyalar

Kodu alttaki taga yazdım.
 
Son düzenleme:
Kodu aşağıdaki gibi düzenleyiniz.
Kod:
Sub Ara()
If Bulunacak = "" Then Exit Sub
For i = 1 To Worksheets.Count
If OptionButton1.Value = False Then
    Set Aranan = Sheets(i).Range("B2:B" & Rows.Count).Find(Bulunacak, , xlValues, xlPart)
    Else
    Set Aranan = Sheets(i).Range("B2:B" & Rows.Count).Find(Bulunacak, , xlValues, xlWhole)
End If
    If Not Aranan Is Nothing Then
        adres = Aranan.Address
        Do
            ListBox1.AddItem
            ListBox1.Column(0, ListBox1.ListCount - 1) = Sheets(i).Name
            ListBox1.Column(1, ListBox1.ListCount - 1) = Aranan.Address
            ListBox1.Column(2, ListBox1.ListCount - 1) = Format(Aranan.Offset(0, -1).Value, "dd.mm.yyyy")
            ListBox1.Column(3, ListBox1.ListCount - 1) = Aranan.Value
            Set Aranan = Sheets(i).Cells.FindNext(Aranan)
        Loop While Not Aranan Is Nothing And Aranan.Address <> adres
    End If
    Label1.Caption = "Aranan  " & Bulunacak
Next i
If adres = "" Then Label1.Caption = Bulunacak & "  bu dosyada yok."

End Sub
 
Kodu aşağıdaki gibi düzenleyiniz.
Kod:
Sub Ara()
If Bulunacak = "" Then Exit Sub
For i = 1 To Worksheets.Count
If OptionButton1.Value = False Then
    Set Aranan = Sheets(i).Range("B2:B" & Rows.Count).Find(Bulunacak, , xlValues, xlPart)
    Else
    Set Aranan = Sheets(i).Range("B2:B" & Rows.Count).Find(Bulunacak, , xlValues, xlWhole)
End If
    If Not Aranan Is Nothing Then
        adres = Aranan.Address
        Do
            ListBox1.AddItem
            ListBox1.Column(0, ListBox1.ListCount - 1) = Sheets(i).Name
            ListBox1.Column(1, ListBox1.ListCount - 1) = Aranan.Address
            ListBox1.Column(2, ListBox1.ListCount - 1) = Format(Aranan.Offset(0, -1).Value, "dd.mm.yyyy")
            ListBox1.Column(3, ListBox1.ListCount - 1) = Aranan.Value
            Set Aranan = Sheets(i).Cells.FindNext(Aranan)
        Loop While Not Aranan Is Nothing And Aranan.Address <> adres
    End If
    Label1.Caption = "Aranan  " & Bulunacak
Next i
If adres = "" Then Label1.Caption = Bulunacak & "  bu dosyada yok."

End Sub

Hocam İlginiz için teşekkürler Tarih Formatı düzelmiş.
Ancak bulunan veriye tıkladığımda aşağıdaki Kod'da gene hata veriyor.
Kod:
Private Sub ListBox1_Click()
    Sheets(ListBox1.Column(0)).Select
    Range(ListBox1.Column(1)).Select
    Range(ListBox1.Column(2)).Select
    Range(ListBox1.Column(3)).Select
End Sub
 
C++:
    Sheets(ListBox1.Value).Select
    Range(ListBox1.List(ListBox1.ListIndex, 1)).Select

İlk iki satırınız hatalı. Diğer satırlar da hatalı ancak diğer iki satırda ne yapmaya çalıştığınızı anlamadım.
 
C++:
    Sheets(ListBox1.Value).Select
    Range(ListBox1.List(ListBox1.ListIndex, 1)).Select

İlk iki satırınız hatalı. Diğer satırlar da hatalı ancak diğer iki satırda ne yapmaya çalıştığınızı anlamadım.

Haklısınız hocam ilk iki satır değil de son iki satır gereksizmiş niye yazdıysam silince düzeldi.
Siz söyleyince dikkat ettim sildim düzeldi.
Bu şekilde sorunsuz.
Kod:
Private Sub ListBox1_Click()
    Sheets(ListBox1.Column(0)).Select
    Range(ListBox1.Column(1)).Select
        
End Sub
 
Denemeden düzelttim. Ben hiç o şekilde kullanmamıştım sorun orada sanıyordum.
Ben de öğrenmiş oldum. =)
 
Dosyanın son halini paylaşayım belki ihtiyacı olan olur.
 

Ekli dosyalar

Son düzenleme:
Geri
Üst