Yazım Düzeni Makrosu

Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Merhaba arkadaşlar. Aşağıdaki makroyu istenildiğinde çalışır hale nasıl getirebiliriz.

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [A:A]) Is Nothing Then Exit Sub
Target.Value = WorksheetFunction.Proper(Target)
End Sub


Yani :
Sub Yazim.Duzeni
.....
End Sub


tarzına nasıl dönüştürebiliriz.
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,843
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
sayın serdarokan aşağıdaki kodu denermisiniz.

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [A:A]) Is Nothing Then Exit Sub
yazı = Len(Target)
yazı1 = UCase(Mid(Target, 1, 1))
If yazı1 = "I" Then
yazı1 = "İ"
End If
yazı2 = Mid(Target, 2, yazı)
yaz = yazı1 & yazı2
Target.Value = yaz
End Sub
 
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Sayın Halit3 ilginize çok teşekkür ederim. Aşağıdaki kodun C:E sütunlarını kapsayacak şekilde değişimi nasıl yapılabilir ?

Sub Yazim_Duzeni()
son = Range("d65536").End(xlUp).Row
For i = 1 To son
Range("d" & i) = Application.WorksheetFunction.Proper(Range("d" & i))
Next
End Sub
 

Ayhan Ercan

Özel Üye
Katılım
10 Ağustos 2005
Mesajlar
1,571
Excel Vers. ve Dili
Microsoft 365- Türkçe
Kod:
Sub Yazim_Duzeni()
[COLOR=black]son = Range("d65536").End(xlUp).Row[/COLOR]
[COLOR=black]For i = 1 To son[/COLOR]
[COLOR=black]Range("c" & i) = Application.WorksheetFunction.Proper(Range("c" & i))[/COLOR]
[COLOR=black]Range("d" & i) = Application.WorksheetFunction.Proper(Range("d" & i))[/COLOR]
[COLOR=black]Range("e" & i) = Application.WorksheetFunction.Proper(Range("e" & i))[/COLOR]
[COLOR=black]Next[/COLOR]
[COLOR=black]End Sub[/COLOR]
 
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Sayın Ayhan Ercan her zamanki gibi yardımseversiniz. Çok teşekkür ederim, iyi çalışmalar dilerim, sağlıcakla kalın.
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,843
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
türkçe karekterli büyük küçük harf uygulamaları


'YAZIM DÜZENİ
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [A:A]) Is Nothing Then Exit Sub
yazı = Len(Target)
yazı1 = UCase(Mid(Target, 1, 1))
If yazı1 = "I" Then
yazı1 = "İ"
End If
yazı2 = Mid(Target, 2, yazı)
yaz = yazı1 & LCase(yazı2)

değer = ""
For J = 1 To Len(yaz)
If Mid(yaz, J, 1) = "İ" Then
değer1 = "i"
Else
değer1 = Mid(yaz, J, 1)
End If
değer = değer + değer1
Next J
Target.Value = değer

End Sub


' BÜYÜK HARF
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [A:A]) Is Nothing Then Exit Sub
yaz = UCase(Target.Value)
For J = 1 To Len(Target)
If Mid(Target.Value, J, 1) = "i" Then
değer1 = "İ"
Else
değer1 = Mid(yaz, J, 1)
End If
değer = değer + değer1
Next J
Target.Value = değer
End Sub


'KÜÇÜK HARF

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [A:A]) Is Nothing Then Exit Sub
yaz = LCase(Target.Value)
For J = 1 To Len(Target)
If Mid(Target.Value, J, 1) = "İ" Then
değer1 = "i"
Else
değer1 = Mid(yaz, J, 1)
End If
değer = değer + değer1
Next J
Target.Value = değer
End Sub
 
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Teşekkürler sayın Halit3. Sağlıcakla kalın
 
Üst