Bul Makrosu Eksİk ÇaliŞiyor

Katılım
30 Kasım 2007
Mesajlar
140
Excel Vers. ve Dili
mm
SAYFADAKİ VERİLERİ BULMAK İSTİYORUM ANCAK AŞAĞIDAKİ KOD İLE SADECE BİRİNİ SEÇEBİLİYORUM. AYRICA ARAMA YAPTIĞIM SAYFA BAŞKA BİR SAYFADAN EŞİTTİR FORMULÜ İLE GELİYOR CTRL+F İLE ARAMA YAPIYORUM ARADIĞIM VERİLER GÖRÜLMESİNE RAĞMEN ARAMA SONUÇ VERMİYOR.
YARDIMLARINIZA ŞİMDİDEN TEŞEKKÜRLER.




Sub Düğme1_Tıklat()
On Error Resume Next
bul = Application.InputBox("Aranılan Kelimeyi Yazın", Application.UserName)
Cells.Find([bul]).Select
For s = 1 To 4000
ActiveCell.Interior.ColorIndex = 40
Next
ActiveCell.Interior.ColorIndex = 0
End Sub
 

Orion1

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

Ofis-2010-TR 32 Bit
Bulunacak veriyi beli bir aralıkta ararsanız bulunması daha çabuk olacaktır.Mesela hangi aralıkta aranacak?
 
Son düzenleme:

Orion1

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

Ofis-2010-TR 32 Bit
Ekli dosyayı inceleyiniz.
Listbox'ta listelenen veriye tıkladığınızda o veri seçilecektir.:cool:
Kod:
Sub ara_bul()
ReDim myarr(1 To 2, 1 To 1)
bul = Application.InputBox("Aranılan Kelimeyi Yazın", Application.UserName)
If bul = "" Then Exit Sub
Cells.Interior.ColorIndex = xlNone
Cells.Font.ColorIndex = 0
Set c = Cells.Find(bul, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
    firstAddress = c.Address
    Do
    a = a + 1
    ReDim Preserve myarr(1 To 2, 1 To a)
        myarr(1, a) = c.Address
        myarr(2, a) = c
        Range(c.Address).Interior.ColorIndex = 3
        Range(c.Address).Font.ColorIndex = 6
        Set c = Cells.FindNext(c)
    Loop While Not c Is Nothing And c.Address <> firstAddress
End If
UserForm1.ListBox1.Column = myarr
UserForm1.Label1.Caption = "TOPLAM..:" & UserForm1.ListBox1.ListCount
UserForm1.Show
End Sub
 
Son düzenleme:

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Aşağıdaki kodu deneyiniz.
Kod:
Sub Düğme1_Tıklat()
Application.Dialogs(xlDialogFormulaFind).Show
End Sub
 
Katılım
30 Kasım 2007
Mesajlar
140
Excel Vers. ve Dili
mm
sayın orion 2 bu saatte yardımınız için teşekkür ederim. bulunan bu hücreleri renklendirebilirmiyiz.
 

Orion1

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

Ofis-2010-TR 32 Bit
say&#305;n orion 2 bu saatte yard&#305;m&#305;n&#305;z i&#231;in te&#351;ekk&#252;r ederim. bulunan bu h&#252;creleri renklendirebilirmiyiz.
Dosyay&#305; istedi&#287;iniz &#351;ekilde g&#252;ncelledim.
4 nolu mesajdan indirebilirsiniz.:cool:
 
Katılım
30 Kasım 2007
Mesajlar
140
Excel Vers. ve Dili
mm
sayın ORİON2 cevabınıza çok teşekkür ederim. Sayfanın herhangi bir sutununda arama yapmak için kodu nasıl düzenlemeliyiz.
 

Orion1

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

Ofis-2010-TR 32 Bit
say&#305;n OR&#304;ON2 cevab&#305;n&#305;za &#231;ok te&#351;ekk&#252;r ederim. Sayfan&#305;n herhangi bir sutununda arama yapmak i&#231;in kodu nas&#305;l d&#252;zenlemeliyiz.
A&#351;a&#287;&#305;daki sat&#305;r&#305; onun alt&#305;ndaki sat&#305;rla de&#287;i&#351;tirirseniz sadece A:B s&#252;tunlar&#305;nda Arama yapar.:cool:
Kod:
Set c = Cells.Find(bul, LookIn:=xlValues, LookAt:=xlWhole)
yukar&#305;daki sat&#305;r&#305; a&#351;a&#287;&#305;daki sat&#305;r ile de&#287;i&#351;tiriniz.:cool:
Kod:
Set c = Range("A1:B65536").Find(bul, LookIn:=xlValues, LookAt:=xlWhole)
 
Katılım
30 Kasım 2007
Mesajlar
140
Excel Vers. ve Dili
mm
sayın ORION2 denedim ama yine tamamında arama yapıyor bir şeyi eksikmi yapıyorum acaba..
 

Orion1

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

Ofis-2010-TR 32 Bit

Orion1

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

Ofis-2010-TR 32 Bit
Aşağıdaki satırıda onun altındaki satırla değştirmek gerekiyor.
Kod:
Set c = Cells.FindNext(c)
yukarıdaki satırı aşağıdaki satırla değiştiriniz.:cool:

Kod:
Set c = Range("A1:B65536").FindNext(c)
 
Katılım
30 Kasım 2007
Mesajlar
140
Excel Vers. ve Dili
mm
sayın ORION2 CEVAP ÇOK GÜZEL OLMUŞ ELİNİZE SAĞLIK.İYİ AKŞAMLAR
 
Katılım
21 Şubat 2006
Mesajlar
29
bu kodlardaki hatayı yardım!!!

ekli dosyadaki hatayı anlayamadım kodları duzelttim ama çalışmasında hata veriyor
nasıl düzeltebilirim yardım edebilirmisiniz.

Private Sub CommandButton1_Click()
Dim k As Range, ilk_adres As String, a As Long
Dim i As Long, syf As String
ListBox1.Clear
If TextBox1.Value = "" Then Exit Sub
ReDim myarr(1 To 2, 1 To 1)
For i = 0 To ListBox2.ListCount - 1
Sheets(ListBox2.Column(0, i)).Cells.Interior.ColorIndex = xlNone
Sheets(ListBox2.Column(0, i)).Cells.Font.Color = vbBlack
Sheets(ListBox2.Column(0, i)).Cells.Font.Bold = False
Sheets(ListBox2.Column(0, i)).Cells.Font.Italic = False
If ListBox2.Selected(i) = True Then
syf = ListBox2.Column(0, i)
Set k = Sheets(syf).Cells.Find(TextBox1.Value, , xlValues, xlPart, , 1)
If Not k Is Nothing Then
ilk_adres = k.Address
Do
a = a + 1
ReDim Preserve myarr(1 To 2, 1 To a)
myarr(1, a) = k.Address(False, False)
myarr(2, a) = k.Value
k.Interior.Color = vbRed
k.Font.Color = vbYellow
k.Font.Bold = True
k.Font.Italic = True
Set k = Sheets(syf).Cells.FindNext(k)
Loop While ilk_adres <> k.Address And Not k Is Nothing
End If
End If
Next i
Set k = Nothing
Label3.Caption = "Kriterlere Uyan " & Format(a, "#,##0") & " Adet Veri Bulundu..!!"
If a > 0 Then
ListBox1.Column = myarr
Erase myarr
MsgBox "Listeleme tamamlandı..!!", vbOKOnly + vbInformation, "ARA-BUL"
End If
If a < 1 Then MsgBox "Yazdığınız veriye uyan veri bulunamdı..!!", vbCritical, "DİKKAT"
TextBox1.Value = ""
TextBox1.SetFocus
End Sub

Private Sub ListBox1_Click()
If ListBox1.ListCount < 1 Then Exit Sub
Sheets(ListBox1.Column(1, ListBox1.ListIndex)).Select
Range(ListBox1.Column(1)).Select
End Sub

Private Sub OptionButton1_Click()
Dim i As Integer
If ListBox2.ListCount < 1 Then Exit Sub
For i = 0 To ListBox2.ListCount - 1
ListBox2.Selected(i) = True
Next
End Sub

Private Sub OptionButton2_Click()
Dim i As Integer
If ListBox2.ListCount < 1 Then Exit Sub
For i = 0 To ListBox2.ListCount - 1
ListBox2.Selected(i) = False
Next
End Sub

Private Sub UserForm_Click()

End Sub

Private Sub UserForm_Initialize()
Dim syf As Worksheet
For Each syf In Worksheets
ListBox2.AddItem syf.Name
Next
ListBox1.ColumnCount = 2
ListBox1.ColumnWidths = "30;200"
OptionButton1.Value = True
End Sub
 

Ekli dosyalar

Üst