Soru Bir Hücreye Girilen Metni Büyük harfe çevirmek

bulentkars

Altın Üye
Katılım
5 Ağustos 2005
Mesajlar
671
Excel Vers. ve Dili
2003 TR
Altın Üyelik Bitiş Tarihi
23-03-2027
Arkadaşlar Merhaba,

Ben Sadece "B20" Satırına yazılan metni büyük harfe çevirmek istiyorum. Aşağıdaki kod ile yapmaya çalıştım ancak, b20 ve sonrasını yapıyor. Sadece "b20" hücresi için kodda nasıl bir düzeltem yapmalıyım. Yardımcı olabilirseniz sevinirim. Teşekkürler


Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Target.Value <> "" And Range("B20").Value Then
Target.Value = UCase(Replace(Replace(Target.Value, "ı", "I"), "i", "İ"))

End If
End Sub
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,372
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Kod:
Private Sub Worksheet_Change(ByVal Target As Range)

    If Intersect(Target, [B20]) Is Nothing Then Exit Sub
    Application.EnableEvents = False
    Target.Value = UCase(Replace(Replace(Target.Value, "ı", "I"), "i", "İ"))
    Application.EnableEvents = True

End Sub
 

bulentkars

Altın Üye
Katılım
5 Ağustos 2005
Mesajlar
671
Excel Vers. ve Dili
2003 TR
Altın Üyelik Bitiş Tarihi
23-03-2027
Ncdet Bey,

Çok Teşekkür ederim. Elinize sağlık
 

bulentkars

Altın Üye
Katılım
5 Ağustos 2005
Mesajlar
671
Excel Vers. ve Dili
2003 TR
Altın Üyelik Bitiş Tarihi
23-03-2027
Necdet Bey,

Yazdığınız kodu ayrı bir dosyada çalıştırdığımda sorunsuz çalışıyor, var olan çalışma kitabımdaki Private Sub Worksheet_Change(ByVal Target As Range) modülünün altına kopyaladığımda yine çalışıyor ancak aşağıda olan kodlarım çalışmıyor, en alta yapıştırdığımda bu sefer benim kodlarım çalışıyor, sizin kodunuz çalışmıyor, Kodun son hali aşağıdaki gibidir. sorun nereden kaynaklanıyor acaba.


Private Sub Worksheet_Change(ByVal Target As Range)

Application.ScreenUpdating = False

If Intersect(Target, [B20]) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Value = UCase(Replace(Replace(Target.Value, "ı", "I"), "i", "İ"))
Application.EnableEvents = True



ActiveSheet.Unprotect "24062003" 'Koruma Kaldır
Range("B19:B20").Interior.Color = xlNone

If Intersect(Target, [B3]) Is Nothing Then Exit Sub

[D2:J31].ClearContents

If Target = "" Then Exit Sub
Set con = VBA.CreateObject("adodb.Connection")
con.Open "provider=microsoft.ace.oledb.12.0;data source=" & _
ThisWorkbook.FullName & ";extended properties=""Excel 12.0;hdr=yes"""

sorgu = "select Tarih, [Günü Geçen Hesap], [Ortalama Vade], [Toplam Risk], [Talep Edilen Limit], [Açıklama],[Risk Birimi Not] from [Log$] where [Hedef Kodu]=" & Target & " order by [Tarih] desc"
Set rs = con.Execute(sorgu)
[D2].CopyFromRecordset rs
son = WorksheetFunction.Max(30, Cells(Rows.Count, "D").End(3).Row)
Range("D31:J" & son).ClearContents
Columns("D:J").EntireColumn.AutoFit
Columns("C:C").ColumnWidth = 9.6
Tarih_Formatı_Yap
ActiveSheet.Protect "24062003" 'Koruma Koy
ActiveSheet.Unprotect "24062003" 'Koruma Kaldır
Range("A1").Select
Application.ScreenUpdating = True

End Sub
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,372
Excel Vers. ve Dili
Ofis 365 Türkçe
Bu durumu sorunuzu sorarken belirtmeliydiniz.

Kodunuzun ilk halini ekleyin, ilgilenen arkadaşımız ona göre düzenleme yapacaktır.
 
Üst