Seçili Hücrelerdeki metin daima büyük harf olsun

Katılım
13 Kasım 2004
Mesajlar
57
Excel Vers. ve Dili
excel2013tr
Sayfalarımda bazı hücrelerde ki metinler her zaman büyük harf olmak zorunda çevirmek için önce metni yazıp makro kullanarak büyük harfe dönüştürüyorum. Benim istediğim makroyu bir defa çalıştırıp hücrelere girilen metnin büyük harf olarak yazılmasıdır. Bunu yapmak mümkünmü?

Teşekkür ederim
Kolay gelsin
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki gibi bir kodda işinizi görebilir. Bu kodu sayfanın kod sayfasına kopyalayın. Kodda A1 hücresine yazınlan yazı, imleç hücreden ayrıldığında otomatikman büyük harfe dönüştürür.

[vb:1:1bf70b4d35]Private Sub Worksheet_SelectionChange(ByVal Target As Range)
[a1] = Replace([a1], "i", "İ")
[a1] = Replace([a1], "ı", "I")
[a1] = StrConv([a1], vbUpperCase)
End Sub
[/vb:1:1bf70b4d35]
 

mehmett

Altın Üye
Katılım
18 Mayıs 2005
Mesajlar
2,571
Excel Vers. ve Dili
Excel 2010 Türkçe
Levent bey, bu kodun tüm sayfada etkili olması mümkün mü acaba ?
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Evet mümkün, aşağıdaki şekilde deneyin.

[vb:1:8c682f446f]Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
ilk = Target
ilk = Replace(ilk, "i", "İ")
ilk = Replace(ilk, "ı", "I")
Target = StrConv(ilk, vbUpperCase)
End Sub
[/vb:1:8c682f446f]
 
Katılım
13 Kasım 2004
Mesajlar
57
Excel Vers. ve Dili
excel2013tr
İlginize çok teşekkür ederim. Kodlar harika çalışıyor şöyle bir sorun var Seçili hücre(ler) (C7:E30) ve (F7:L30) aralığında ise kodları nasıl yazmalı. Birde çalışma sayfası değilde kitaba kodları uyarlamak mümkünmü?

Teşekkür ederim kolay gelsin
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki kodu kitabın Thisworkbook sayfasına kopyalayarak deneyin.

[vb:1:21d9a37d70]Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
On Error Resume Next
If Intersect(Target, [c7:l30]) = "" Then Exit Sub
ilk = Target
ilk = Replace(ilk, "i", "İ")
ilk = Replace(ilk, "ı", "I")
Target = StrConv(ilk, vbUpperCase)
End Sub
[/vb:1:21d9a37d70]
 
Katılım
13 Kasım 2004
Mesajlar
57
Excel Vers. ve Dili
excel2013tr
Sayın leventm teşekkür ederim çok güzel, tam istediğim gibi oldu.
Elinize sağlık.
 
G

Guest

Misafir
Sayın Leventm, kod sayfanın çalışmasını çok yavaşlatıyor. Çözüm varmadır.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Yavaşlatması için hiç bir sebep yok sadece Excel versiyonunuzdan veya pcnizin özelliklerinden olabilir.



Not:Bu arada eski bir üyemiz olarak hala imza bölümüne excel versiyonunuzu ve dilini yazmamışsınız. Bu eksikliği en kısa sürede tamamlamanızı rica ediyorum.
 
G

Guest

Misafir
Uyarınız için teşekkür. Eksiklik giderilmiştir.
Kodu ara ve renklendir ile beraber kullanmamdan kaynaklanmış olabilir mi?
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Kodu ara ve renklendir ile beraber kullanmamdan kaynaklanmış olabilir mi?
Olması mümkündür, birde diğer kodları silerek deneyin.
 
Üst