Çözüldü arama yaparken büyük küçük harf duyarsız olarak arama yapma

Katılım
15 Şubat 2025
Mesajlar
3
Excel Vers. ve Dili
2013 türkçe
Selam Üstadlarım,

aşağıdaki kodu yazdım fakat buradaki sıkıntım arama yaparken büyük küçük harfe duyarlı olarak arama yapıyor. bunu nasıl duyarsız olarak arama yaptırabilirim.
şimdiden cevaplarınız için teşekkür ederim.

Private Sub TextBox9_Change()

On Error Resume Next
Dim sonsat As Integer
Dim i As Integer
Dim sonsatgecici As Integer
ThisWorkbook.Activate
sonsat = Sheets("FİRMA EKLE").Range("B100000").End(xlUp).Row
Sheets("FRMSUZ").Range("A2:B100000").ClearContents
For i = 2 To sonsat
If Sheets("FİRMA EKLE").Range("B" & i) Like "*" & TextBox9 & "*" Then
sonsatgecici = Sheets("FRMSUZ").Range("A100000").End(xlUp).Row + 1
Sheets("FRMSUZ").Range("A" & sonsatgecici) = Sheets("FİRMA EKLE").Range("A" & i)
Sheets("FRMSUZ").Range("B" & sonsatgecici) = Sheets("FİRMA EKLE").Range("B" & i)

End If
Next

Call Yenile

End Sub
 

volki_112

Altın Üye
Katılım
29 Eylül 2023
Mesajlar
702
Excel Vers. ve Dili
2019 Türkçe
Altın Üyelik Bitiş Tarihi
13-12-2029
Selam Üstadlarım,

aşağıdaki kodu yazdım fakat buradaki sıkıntım arama yaparken büyük küçük harfe duyarlı olarak arama yapıyor. bunu nasıl duyarsız olarak arama yaptırabilirim.
şimdiden cevaplarınız için teşekkür ederim.

Private Sub TextBox9_Change()

On Error Resume Next
Dim sonsat As Integer
Dim i As Integer
Dim sonsatgecici As Integer
ThisWorkbook.Activate
sonsat = Sheets("FİRMA EKLE").Range("B100000").End(xlUp).Row
Sheets("FRMSUZ").Range("A2:B100000").ClearContents
For i = 2 To sonsat
If Sheets("FİRMA EKLE").Range("B" & i) Like "*" & TextBox9 & "*" Then
sonsatgecici = Sheets("FRMSUZ").Range("A100000").End(xlUp).Row + 1
Sheets("FRMSUZ").Range("A" & sonsatgecici) = Sheets("FİRMA EKLE").Range("A" & i)
Sheets("FRMSUZ").Range("B" & sonsatgecici) = Sheets("FİRMA EKLE").Range("B" & i)

End If
Next

Call Yenile

End Sub
bu kodu kullanın
Kod:
Private Sub TextBox9_Change()

    On Error Resume Next
    Dim sonsat As Long
    Dim i As Long
    Dim sonsatgecici As Long
    Dim aramaMetni As String
    Dim firmaAdi As String

    aramaMetni = TextBox9.Value
    ThisWorkbook.Activate
    sonsat = Sheets("FİRMA EKLE").Range("B100000").End(xlUp).Row
    Sheets("FRMSUZ").Range("A2:B100000").ClearContents

    For i = 2 To sonsat
        firmaAdi = Sheets("FİRMA EKLE").Range("B" & i).Value

        ' Türkçe harfleri bozmadan, harf duyarsız karşılaştırma yap
        If InStr(1, firmaAdi, aramaMetni, vbTextCompare) > 0 Then
            sonsatgecici = Sheets("FRMSUZ").Range("A100000").End(xlUp).Row + 1
            Sheets("FRMSUZ").Range("A" & sonsatgecici).Value = Sheets("FİRMA EKLE").Range("A" & i).Value
            Sheets("FRMSUZ").Range("B" & sonsatgecici).Value = firmaAdi
        End If
    Next i

    Call Yenile

End Sub
 
Katılım
15 Şubat 2025
Mesajlar
3
Excel Vers. ve Dili
2013 türkçe
bu kodu kullanın
Kod:
Private Sub TextBox9_Change()

    On Error Resume Next
    Dim sonsat As Long
    Dim i As Long
    Dim sonsatgecici As Long
    Dim aramaMetni As String
    Dim firmaAdi As String

    aramaMetni = TextBox9.Value
    ThisWorkbook.Activate
    sonsat = Sheets("FİRMA EKLE").Range("B100000").End(xlUp).Row
    Sheets("FRMSUZ").Range("A2:B100000").ClearContents

    For i = 2 To sonsat
        firmaAdi = Sheets("FİRMA EKLE").Range("B" & i).Value

        ' Türkçe harfleri bozmadan, harf duyarsız karşılaştırma yap
        If InStr(1, firmaAdi, aramaMetni, vbTextCompare) > 0 Then
            sonsatgecici = Sheets("FRMSUZ").Range("A100000").End(xlUp).Row + 1
            Sheets("FRMSUZ").Range("A" & sonsatgecici).Value = Sheets("FİRMA EKLE").Range("A" & i).Value
            Sheets("FRMSUZ").Range("B" & sonsatgecici).Value = firmaAdi
        End If
    Next i

    Call Yenile

End Sub

ilginiz için teşekkür ederim Maalesef denedim olmadı
 

antonio

Destek Ekibi
Destek Ekibi
Katılım
13 Şubat 2011
Mesajlar
1,163
Excel Vers. ve Dili
Microsoft Office Professional Plus 2013 Türkçe
Merhaba,
Volki_112'nin kodlarında firmaAdi, ve aramaMetni değişkenlerin tanımlarını aşağıdaki şekilde değiştirerek deneyiniz:
Kod:
firmaAdi = UCase(Replace(Replace(Sheets("FİRMA EKLE").Range("B" & i).Value, "i", "İ"), "ı", "I"))
aramaMetni = UCase(Replace(Replace(TextBox9.Value, "i", "İ"), "ı", "I"))
 
Son düzenleme:
Katılım
15 Şubat 2025
Mesajlar
3
Excel Vers. ve Dili
2013 türkçe
Merhaba,
Volki_112'nin kodlarında firmaAdi, ve aramaMetni değişkenlerin tanımlarını aşağıdaki şekilde değiştirerek deneyiniz:
Kod:
firmaAdi = UCase(Replace(Replace(Sheets("FİRMA EKLE").Range("B" & i).Value, "i", "İ"), "ı", "I"))
aramaMetni = UCase(Replace(Replace(TextBox9.Value, "i", "İ"), "ı", "I"))


Çok teşekkür ederim yazmış olduğunuz kod çalıştı.
UCase i kaldırınca büyük küçük yazıları da görme imkanı oldu.
emeğinize sağlık çok çok teşekkür ederim.

kodların son hali:

aramaMetni = Replace(Replace(TextBox9.Value, "i", "İ"), "ı", "I")
firmaAdi = Replace(Replace(Sheets("FİRMA EKLE").Range("B" & i).Value, "i", "İ"), "ı", "I")
 
Üst