For Each Döngüsünde TextBox'a Yazılan Değeri Sayfada Bulamıyor

programer

Altın Üye
Katılım
26 Mayıs 2005
Mesajlar
604
Excel Vers. ve Dili
Office 2022 - Türkçe
Altın Üyelik Bitiş Tarihi
16-03-2025
Arkadaşlar merhaba
Aşağıdaki kod'ta TextBox'un içine yazdığım değeri sayfada arıyor eğer değer var ise 1 arttırıyor yok ise sayfaya kayıt yapıyor buraya kadar herşey normal. Ama şöyle bir sorun oluşuyor textbox'un içine yazdığım değer "0211" gibi ise bunu sayfaya "211" olarak kaydediyor daha sonra textbox'un içine "0211" yazdığım zaman bunu sayfada bulamıyor ve tekrar kaydediyor. Forumda araştırtım ama net bir sonuca ulaşamadım. Bu sorunu nasıl halledebilirim.

Kod:
For Each t In Range("B2:B" & WorksheetFunction.CountA(Worksheets("Stk_Nmr_Tnt").[B1:B65000]))
    If t = BN1.Text Then
           X = Sheets("Stk_Nmr_Tnt").Range("B:B").Cells.Find(What:=BN1, LookIn:=xlValues).Row
           BN1.Value = BN1
           BN2 = Sheets("Stk_Nmr_Tnt").Cells(X, 3) + 1
           Sheets("Stk_Nmr_Tnt").Cells(X, 3) = Val(BN2)
           Exit Sub
    End If
Next t
     tt = WorksheetFunction.CountA(Worksheets("Stk_Nmr_Tnt").[a1:a60000]) + 1
     Worksheets("Stk_Nmr_Tnt").Cells(tt, "a").Value = tt - 1
     tt = WorksheetFunction.CountA(Worksheets("Stk_Nmr_Tnt").[A1:A65000])
     Worksheets("Stk_Nmr_Tnt").Cells(tt, "B").Value = BN1.Value
     Worksheets("Stk_Nmr_Tnt").Cells(tt, "C").Value = "1"
 

kulomer46

Altın Üye
Katılım
23 Mart 2007
Mesajlar
1,513
Excel Vers. ve Dili
Microsoft Office LTSC Professional Plus 2021 - Türkçe
Altın Üyelik Bitiş Tarihi
08-06-2027
Aşağıdaki koduda projenize ekleyin..
Private Sub BN1_Change()
BN1.Text = Val(BN1.Text)
End Sub
 

programer

Altın Üye
Katılım
26 Mayıs 2005
Mesajlar
604
Excel Vers. ve Dili
Office 2022 - Türkçe
Altın Üyelik Bitiş Tarihi
16-03-2025
Aşağıdaki koduda projenize ekleyin..
Private Sub BN1_Change()
BN1.Text = Val(BN1.Text)
End Sub
Sayın kulomer46 benim sorunum BN1.Text formatı değil buraya yazdığım değeri For Each döngüsü ile sayfada arıyorum. For Each döngüsünün aldığı değer "211" oluyor ve BN1.Text değerine eşit olmadığı için tekrar kayıt yapıyor. Burada For Each döngüsünün aldığı değer "0211" olması gerekiyor bunu nasıl sağlayabiliriz.
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
Birincisi; BN1'in değerini hücereye yazdırmadan önce, yazdıracağınız hücrenin biçimini "text/metin" formatına döndürebilirisiniz.

Örneğin BN1 değerini A1'e olduğu gibi yazdırmak istiyorsanız;

Kod:
Cells(1, 1).NumberFormat = "@"
Cells(1,1)=BN1
Böylelikle, textbox'da aradığınız değer ile; sayfada aradığınız değer aynı olur veya

İkincisi; A1 hücresine tek tırnak kullanarak yazdırmak... Şöyle ki;

Kod:
cells(1,1)="'" & BN1
Başka da alternatifler türetilebiir. Deneyiniz.
 

programer

Altın Üye
Katılım
26 Mayıs 2005
Mesajlar
604
Excel Vers. ve Dili
Office 2022 - Türkçe
Altın Üyelik Bitiş Tarihi
16-03-2025
Sayın fpc hücrenin biçimini "text/metin" formatına çevirdiğim zaman işlem gerçekleşiyor yardımınız için teşekkür ederim.
 
Üst