StrConv fonksiyonu hakkında bilgi

Katılım
29 Ocak 2006
Mesajlar
138
Excel Vers. ve Dili
2003 türkçe
Dim bul as Range
For Each bul In Range("B2:B" & WorksheetFunction.CountA(Range("B2:B6500")))
=If StrConv(bul.value,vbUpperCase)=StrConv(TextBox.value,vbUpperCase) Then=(Özellikle eşittir işaretleri arasındaki kısım. Kodda eşittir yok.)
bak.Select
TextBox1.vaule=Activecell.offset(0,1).Value
TextBox3.Value=Activecell.Offset(0,2).Value
 
Katılım
28 Mayıs 2005
Mesajlar
37
StrConv: Stringi Verilen Moda cevirir.

StrConv(String,Mod)

String : cevirilecek metin
Mod : vbLowerCase = Kücük harfe cevrilir
vbUpperCase = Büyük harfe cevrilir
vbProperCase = Ilk harf büyük digerleri kücük
VbFromUnicode = Unicode'dan cevrilir
vbUnicode = Unicode'a cevrilir
vbHiragana = Hiragana
vbKatakana = Katakana
vbNarrow = Dar
vbWide = Genis
 
Katılım
16 Mart 2006
Mesajlar
66
Excel Vers. ve Dili
Excel 2007
İngilizce
Sevgili aucar19,

Bir metin cümlesinin sadece ilk kelimesinin ilk harfini büyük yapan bir kod var mı? Proper'le cümle içindeki her kelimenin ilk harfini büyük yapabiliyoruz ancak benim istediğimi dünden bu yana forumda arıyorum ancak bulamadım. Yardımcı olabilirsen sevinirim.
 

Ali

Uzman
Katılım
21 Temmuz 2005
Mesajlar
7,897
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
Sub cumledeilkharfbuyuk()
Dim s As String
Dim j As Long
Dim cell As Range
For Each cell In Selection.Cells
If cell.HasFormula = False Then
s = cell.Text
v = Split(s, ".")
For j = 0 To UBound(v)
s = Application.Trim(v(j))
s = StrConv(s, vbLowerCase)
s = UCase(Left$(s, 1)) & Mid$(s, 2)
v(j) = s
Next
cell = Application.Trim(Join(v, ". "))
End If
Next
End Sub
 

Ali

Uzman
Katılım
21 Temmuz 2005
Mesajlar
7,897
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
Konunun başlığıda değişse iyi olacak.Çünkü bir anlam ifade etmiyor. İlgili moderatör arkadaşlar düzeltirler sanırım.
 
Katılım
17 Temmuz 2006
Mesajlar
4
Excel Vers. ve Dili
xp turkce
fructose,


ya belki cok basit ama ben bulamadım simdi 2 çalısma sayfası var 1.calısma sayfasında ki sayılar 8 satırda bi toplanıyor ben butoplamları
2.sayfada 1er satırlar halınde göstermeye çalısıyorum 2. sayfada hucreye =yazıp 1.sayfada işaretlediğimde oluyor ama sorun su 2.sayfada hucreye yazdığım formulu bir altındakı hucreye kopyaladıgım zaman 1.sayfada da 1 alttaki hucreyi yazıyor ben 8 alttaki hucreyi gostermesini istiyorum saygılarımla ...
 

Ali

Uzman
Katılım
21 Temmuz 2005
Mesajlar
7,897
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
Sn oguzhanbkurt, farklı konu başlığı altında sorunuzu sorabilirmisiniz konu iyice dağıldı çünkü..
 
Katılım
16 Mart 2006
Mesajlar
66
Excel Vers. ve Dili
Excel 2007
İngilizce
Sevgili fructose,

Kodlar çok güzel çalışıyor. Bu kodları makroyla çalıştırmak yerine, Worksheets Change'e uyguladığımızda ve sadece sabit bir hücreyi (örn. B15) otomatik değiştirmesini istediğimizde kodların ne şekilde düzenlenmesi gerekiyor. İlginiz için şimdiden teşekkürler.
 

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
Alternatif olarak aşağıdaki kodu denermisiniz.

[vb:1:15f247c6c7]Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$B$1" Then Exit Sub
[b1] = Evaluate("=UPPER(""" & Left([b1], 1) & """)") & Right([b1], Len([b1]) - 1)
End Sub
[/vb:1:15f247c6c7]
 
Katılım
16 Mart 2006
Mesajlar
66
Excel Vers. ve Dili
Excel 2007
İngilizce
Sevgili leventm,

Sizin yazdığınız kodlar bir tek cümlede iyi çalışıyor, ancak birden fazla cümle olunca çalışmıyor. Ayrıca belirtilen hücredeki bütün karakterlerin büyükharli olduğu durumlarda küçükharfe çevirmiyor.
Sayın fructose'un yazdığı kodlarda bu problemler olmuyor, yalnızca türkçe karakterleri tanımıyor. Bu düzeltilip Worksheet Change'de belirli bir hücreyi otomatik değiştirebilirse benim için çok iyi olur.
Çok mu şey istedim 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
Aşağıdaki kodu deneyin. Sadece B15 hücresinde çalışır.

[vb:1:655301c284]Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$B$15" Then Exit Sub
[b15] = Evaluate("=UPPER(""" & Left([b15], 1) & """)") & Evaluate("=LOWER(""" & Right([b15], Len([b15]) - 1) & """)")
End Sub
[/vb:1:655301c284]
 
Üst