• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Sutundaki veriyi sayı formatına kodla çevirme

kemal turan

Altın Üye
Katılım
10 Haziran 2011
Mesajlar
1,677
Excel Vers. ve Dili
Excel 2010 32 bit
Merhaba,
Asist sisteminden çektiğim geciken borç verilerinde borç hanesindeki format sayı olmadığı için veri olarak kullanamıyordum.
Değiştir işlemi ile önce ,=; sonra .=, daha sonra ;=. yaparak sonuca ulaşıyorum. Bu işlemi yapmak için aşağıdaki kodu makro uygula olarak elde edip sonradan "DÜZENLE" adlı butona bağladım.
örnek dosyada görüleceği üzere butonla yaptığımda değişiklikler oluyor fakat sayıya dönüşmüyor.
Diğer bir işlem E sutunundaki tarihi fonksiyonla J ve K sutunlarına ay ve yıl olarak gösteriyorum.
Bu kısmıda kodla çözebilirsek memnun olurum.
Norman dosyada 10.000 satır veri oluyor.
Teşekkür ederim.
Kod:
Private Sub CommandButton1_Click()
Columns("H:H").Select
    Selection.Replace What:=",", Replacement:=";", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    Selection.Replace What:=";", Replacement:=".", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    ActiveWindow.SmallScroll Down:=-6
    Columns("H:H").Select
    Selection.NumberFormat = "#,##0.00"
    Range("H2").Select
End Sub
 

Ekli dosyalar

Merhaba.

Aşağıdaki gibi olabilir.
.
Kod:
[FONT="Arial Narrow"]Private Sub CommandButton1_Click()
    Range("H2:H" & [H65536].End(3).Row).Replace What:=",", Replacement:="", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False
    Range("H2:H" & [H65536].End(3).Row).Replace What:=".", Replacement:=",", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False
    For satır = 2 To [H65536].End(3).Row
        Cells(satır, "H") = 1 * Cells(satır, "H"): Cells(satır, "H").NumberFormat = "#,##0.00"
    Next
End Sub[/FONT]
 
Ömer bey merhaba,
Çok teşekkür ederim.
E sutunundaki tarihin J ve K sutunlarına Tarihin yıl ve aya olarakcçevrilmesi için de yardımcı olabilirseniz memnun olurum.
Selametle kalınız.
 
Tekrar merhaba.
Önceki cevabımdaki NEXT satırından önce aşağıdaki satırı ekleyin.
.
Kod:
 [FONT="Arial Narrow"]       Cells(satır, "J") = Format(Cells(satır, "E"), "yyyy"): Cells(satır, "K") = Format(Cells(satır, "E"), "mmmm")[/FONT]
 
Ömer bey merhaba,
Emeğiniz için çok teşekkür ederim.
Hakkınıız helal ediniz.
Selametle kalınız
 
Tekrar merhaba.

Önemli olan ihtiyacın görülmesi.
Ayrıca, işlemlerin tümü için kod aşağıdaki şekilde kısaltılabilir.
.
Kod:
[FONT="Arial Narrow"][COLOR="Blue"][B]Private Sub CommandButton1_Click()[/B][/COLOR]
For satır = 2 To [H65536].End(3).Row
    Cells(satır, "H").Replace What:=",", Replacement:="", LookAt:=xlPart
    Cells(satır, "H").Replace What:=".", Replacement:=",", LookAt:=xlPart
    Cells(satır, "H") = 0 + Cells(satır, "H"): Cells(satır, "H").NumberFormat = "#,##0.00"
    Cells(satır, "J") = Format(Cells(satır, "E"), "yyyy"): Cells(satır, "K") = Format(Cells(satır, "E"), "mmmm")
Next
[B][COLOR="blue"]End Sub[/COLOR][/B][/FONT]
 
Geri
Üst