ccuneyt13
Altın Üye
- Katılım
- 20 Ocak 2011
- Mesajlar
- 477
- Excel Vers. ve Dili
- Office 365 Türkçe (64 bit)
- Altın Üyelik Bitiş Tarihi
- 01-11-2026
Arkadaşlar Merhaba,
Ekte yer alan dosyada 46.2000 - 117.0000 - 6.5000 gibi metin olarak görünen sayılar var. Amacım bunları 46,20 - 117,00 - 6,50 olarak makro ile sayıya çevirmek.
Öncelikle makrosuz olarak H sütunu ile M sütunlarını seçtim. Biçimlendirmeden Sayı formatı yaptım, Değiştir ile "." ları "," ile değiştirdim. İstediğim sonucu aldım.
Ancak aynı işlemleri makro kaydederek yapıp çalıştırdığımda rakamları 462.000,00 - 1.170.000,00 - 65.000,00 olarak değiştirdi.
Makro Kaydet ile aldığım kodlar bunlardır.
Birde aşağıdaki gibi bir kod buldum ve çalıştırdım. Bu kod tam istediğim gibi çeviriyor ancak buda her şeyi (istemediğim sütunları da) çeviriyor.
Sizden ricam ek dosyada üst örnekte sarı renkli sütunları alttaki gibi sayıya dönüştürmek. Yada 2. kodu sadece istediğim sütunlara uygulamak için kodda değişiklik.
Yardım ve destekleriniz için şimdiden teşekkürlerimi sunuyorum.
Saygılarımla.
Örnek Dosya:
http://s6.dosya.tc/server6/nsy874/Ornek1.xlsx.html
Ekte yer alan dosyada 46.2000 - 117.0000 - 6.5000 gibi metin olarak görünen sayılar var. Amacım bunları 46,20 - 117,00 - 6,50 olarak makro ile sayıya çevirmek.
Öncelikle makrosuz olarak H sütunu ile M sütunlarını seçtim. Biçimlendirmeden Sayı formatı yaptım, Değiştir ile "." ları "," ile değiştirdim. İstediğim sonucu aldım.
Ancak aynı işlemleri makro kaydederek yapıp çalıştırdığımda rakamları 462.000,00 - 1.170.000,00 - 65.000,00 olarak değiştirdi.
Makro Kaydet ile aldığım kodlar bunlardır.
Kod:
Sub Makro1()
'
' Makro1 Makro
'
'
Columns("H:N").Select
Range("H2").Activate
Selection.NumberFormat = "#,##0.00"
Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
End With
End Sub
Kod:
Sub ConvertTextNumberToNumber()
For Each WS In Sheets
On Error Resume Next
For Each r In WS.UsedRange.SpecialCells(xlCellTypeConstants)
If IsNumeric(r) Then r.Value = Val(r.Value)
Next
Next
End Sub
Yardım ve destekleriniz için şimdiden teşekkürlerimi sunuyorum.
Saygılarımla.
Örnek Dosya:
http://s6.dosya.tc/server6/nsy874/Ornek1.xlsx.html
Son düzenleme: