Listbox ile Sayfalarda Ara Makrosunda Hata alıyorum.

Katılım
9 Ocak 2011
Mesajlar
354
Excel Vers. ve Dili
2007 Türkçe
Altın Üyelik Bitiş Tarihi
01-07-2023
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

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
Kodu alttaki taga yazdım.
 
Son düzenleme:

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
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
 
Katılım
9 Ocak 2011
Mesajlar
354
Excel Vers. ve Dili
2007 Türkçe
Altın Üyelik Bitiş Tarihi
01-07-2023
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
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
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.
 
Katılım
9 Ocak 2011
Mesajlar
354
Excel Vers. ve Dili
2007 Türkçe
Altın Üyelik Bitiş Tarihi
01-07-2023
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
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
Denemeden düzelttim. Ben hiç o şekilde kullanmamıştım sorun orada sanıyordum.
Ben de öğrenmiş oldum. =)
 
Katılım
9 Ocak 2011
Mesajlar
354
Excel Vers. ve Dili
2007 Türkçe
Altın Üyelik Bitiş Tarihi
01-07-2023
Dosyanın son halini paylaşayım belki ihtiyacı olan olur.
 

Ekli dosyalar

Son düzenleme:
Üst