• DİKKAT

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

Ondalık ayracı hatası

Katılım
25 Ağustos 2005
Mesajlar
569
Excel Vers. ve Dili
Excel 2003 Tr
Merhaba Üstatlarım; elimdeki dosyada 5217 satır bir veri var ve bu dosyanın üç sütununda rakamlar var. Ancak bu rakamların ondalık ayraçları da (.) örneğin 96.157,68 olması gereken rakam hücrede 96.157.68 olarak görünmekte. Bul değiştir ile yapamam çünkü ikiside nokta olduğundan yapamiyorum hücre biçimi seçerek de bul değiştir yapamıyorum. Tek tek yazsam 12-13 bin hücre arası bir işlem yapmam gerekmekte. Bunun kolayı bir yöntemi varmıdır değerli fikirlerinizi paylaşabilirmisiniz lütfen.
 
VEriniz A1'de ise aşağıdaki formülü girdiğiniz hücrede istediğiniz dönüşüm gerçekleşir. Daha sonra çıkan verileri kopyala/Değerleri Yapıştır ile istediğiniz yere taşıyabilir ve son olarak da hücre biçimlendirme ile basamak ve ondalık simgelerini ekleyebilirsiniz:

Kod:
=YERİNEKOY(A1;".";"")/100
 
Yusuf bey ilginize teşkkür ederim ancak 1.000 TL olan rakmalarda var 1 milyon olan rakamlarda var ve tek tek /100 /1 /10 gibi ayırırsam aynı zamanı harcamış olacağım hemen hemen. Aslında her hücrenin sağdan üçüncü değerini değiştirecek bir formül lazım. Yani 1.000.32 olan değere öyle bir formül yazmalıyımki hücrenin sağdan sola doğru 3 karakteri olan .32 değeri formül sonrası ,32 olmalı. Bunu nasıl yapabilirim.
 
Merhaba,

Örneğin 1.000 olan bir tutar sizde 1.000.00 olarak mı gözüküyor yoksa 1.000 olarak mı? Yani küsuratı olmayanlarda .00 var mı?

.
 
Yusuf bey ilginize teşkkür ederim ancak 1.000 TL olan rakmalarda var 1 milyon olan rakamlarda var ve tek tek /100 /1 /10 gibi ayırırsam aynı zamanı harcamış olacağım hemen hemen. Aslında her hücrenin sağdan üçüncü değerini değiştirecek bir formül lazım. Yani 1.000.32 olan değere öyle bir formül yazmalıyımki hücrenin sağdan sola doğru 3 karakteri olan .32 değeri formül sonrası ,32 olmalı. Bunu nasıl yapabilirim.

Formülü denediniz mi?
 
Ömer hocam
bendeki 1.000 olan bir tutar 1.000.00 olarak görünmekte.Küsüratı olsun olmasın sonu .00 veya (.) küsuratlı duruyor. Sayıları bildiğiniz metin şeklinde algılamış hücreler.

Yusuf hocam verdiğiniz kodu yazdım onda sıkıntım yok sıkıntım diğer hücrelere koyaladığımda hücrenin içine f2 ile girip enter yapmadan değişmemesi.

Eğer bir makro kod ile bunu yapabilirsem durumu kurtaracağım. İstediğim a sütunundaki hücrelerin en sağından sola doğru olan üçüncü karakterini "." yerine "," yapmaktır. İlginize çok teşekkür ederim.
 
Yusuf bey'in önerdiği yöntemi bul değiştir uygulayarak yapabilirsiniz. Bu şekilde daha hızlı sonuç alırsınız. Aşağıdaki yolu izleyin.

Veri aralığını fare ile seçin / ctrl h(bul değiştir) / Aranan bölüme nokta işaretini koyun ve tümünü değiştire basın.

Bu işlemden sonra boş bir hücreye 100 yazın ve yazdığınız bu hücreyi kopyalayın, veri aralığını tekrar seçip fare ile seçili alanda sağ klik
yapın, özel yapıştır / seçeneğinde "böl" seçeneğini işaretleyin tamam ile işlemi bitirin.
 
Hocam sizin ve Yusuf hocamın verdiği bilgiler doğru ve bunu zaman zaman kullanıyorum ve yönteminiz çok doğru ve pratik bir yöntem ancak benim bu 15 bin hücrenin içinde 999,99 tl ve aşağısı olan değerleri rakam olarak aldığı için bu yöntemleri uyguladığımda normal sayı olan değerler yüze bölünerek daha da küçülüyor. bu nedenle ben hücrede en sağdan sola doğru üçüncü değeri değiştirecek bir kod bulmak istedim.
 
Eğer 1000 olan veri 1.000.00 olarak görünüyorsa verdiğim formül onu 1000'e dönüştürecektir zaten. 999,99 olan değerler nasıl görünüyor?
 
Yusuf hocam aşağıda benim listemdeki değerlerden birkaçı var bunları boş bir sayafaya yapıştırıp sizin yönteminizi uyguladığınızda ne demek istediğimi daha iyi anlayacaksınız.

Ham Değerler
744,59
46,13
102.345.92
0,26


Uygulama Sonrası değerler

7,45
0,46
102.345,92
0,00
 
Şunu deneyin:

Kod:
=EĞER(ESAYIYSA(KIRP(A1)*1)=DOĞRU;KIRP(A1)*1;YERİNEKOY(KIRP(A1);".";"")/100)
 
Yusuf hocam ilginize ve sabrınıza teşekkür ederim. Sorunu bu formül ile çözdüm. Hücreden diğerlerine formülü kopyalayınca güncellemiyor f2 ile hücreye girip çıktığınızda çalışıyordu formül ancak onu da farklı isimle kaydet ile kaydettiğimde dosya ismi değişince hücrelerin hepsini güncelleyip doğru rakamları verdi. Tekrar teşekkür ederim.
 
Makro ile alternatif olsun.
Detaylı deneme yapmadım.

Kod:
Sub Degistir()
    
    Dim c As Range, alan As Range, sor As String, d, a
    
    Set alan = Range("A1:B5") 'değişim yapılacak alan
    
    sor = MsgBox("Daha Önce Kodu Çalıştırdığınız Alanda Tekrar" & Chr(10) _
        & "Kodu Çalıştırırsanız Veri Kaybına Uğrarsınız." & Chr(10) & Chr(10) _
            & "Devam Edeyim mi?", vbCritical + vbYesNo, "Dikkat !")
    
    If sor = vbNo Then Exit Sub

    For Each c In alan
        If c <> "" Then
            d = Split(c.Value, ".")
            a = d(UBound(d))
            If c <> Val(c) And Len(a) < 3 Then
                c.Value = (Left(c, Len(c) - 3) & "," & a) + 0
            Else
                c.Value = Round(c.Value / 100, 2)
            End If
        End If
    Next c

End Sub

.
 
Güncellememesinin sebebi dosyanızda hesaplamayı manuel yapmış olabilirsiniz. Otomatiğe çevirince düzelebilir.
 
Geri
Üst