NumToText2 Fonksiyonu

Tanım


Verilen verilen nümerik bilgiyi, yazıya çevirir. Ondalıklı sayıların çevriminde, ondalık işareti olarak araya yüzde işareti (%) ilave edilir. Ondalık kısmın kaç hanesinin dikkate alınacağı fonksiyona söylenir. Yazıya çevrilen rakamların arasında boşluk bırakılmaz.

Kullanım Şekli


Değişken = Document.NumToText2(NümerikBilgi, BasamakSayısı)

Ana Nesne


Document (Doc) nesnesinin ele manıdır. Bir doküman nesnesi ile kullanılmak zorundadır.

Parametreler


Parametre

Açıklama

NümerikBilgi

Yazıya çevrilecek sayısal veya metinsel olabilen nümerik bilgi. Metinsel bilgiden kasıt, text formatındaki nümerik karakterlerden oluşan bilgidir. Fonksiyon için; 1200.30, “1200.30” ve “1,200.30” aynı bilgidir.

BasamakSayısı

Çevrilmesini istediğimiz ondalık kısmın basamak sayısı. Tam sayı cinsinden değerdir. Sıfır (0) veya sıfırdan büyük değer girilmelidir. Negatif sayılarda basamak sayısı 2 (iki) kabul edilir.


Eğer sayının sahip olduğu ondalık kısmın basamak sayısından daha büyük bir değer girilirse, çevrim esnasında ondalık sayının sonuna fark kadar 0 (sıfır) ilave edilir.

Geri Dönen Değerler


Verilen sayının yazıya dönüştürülmüş halini, karakter dizini şeklinde geri döner. Bir değişkene atanarak kullanılmalıdır.

Hatırlatmalar


Metinsel bilgilerde, tırnak ve binlik ayıraç olan virgüller dikkate alınmaz.

Fonksiyon ondalıklı sayılarda, ondalık kısmın hane sayısına göre yuvarlama yapmaz.

Sayı olarak 0 (Sıfır) değerinde, boş bilgi geri dönülür.

NumToText fonksiyonundan farkı, ondalık kısmın basamak sayısının söylenebilmesidir.

Örnek


Sub Makro1()

       Sayi = 23845.587

       Mesaj = "NumToText2(" & Sayi & ",0) fonksiyonun sonucu aşağıdadır."

       Mesaj = Mesaj & chr(13) & Doc.NumToText2(Sayi,0)

       Mesaj = Mesaj & chr(13) & "NumToText2(" & Sayi & ",1) fonksiyonun sonucu aşağıdadır."

       Mesaj = Mesaj & chr(13) & Doc.NumToText2(Sayi,1)

       Mesaj = Mesaj & chr(13) & "NumToText2(" & Sayi & ",2) fonksiyonun sonucu aşağıdadır."

       Mesaj = Mesaj & chr(13) & Doc.NumToText2(Sayi,2)

       Mesaj = Mesaj & chr(13) & "NumToText2(" & Sayi & ",3) fonksiyonun sonucu aşağıdadır."

       Mesaj = Mesaj & chr(13) & Doc.NumToText2(Sayi,3)

       Mesaj = Mesaj & chr(13) & "NumToText2(" & Sayi & ",4) fonksiyonun sonucu aşağıdadır."

       Mesaj = Mesaj & chr(13) & Doc.NumToText2(Sayi,4)        

       Doc.MsgBox Mesaj

End Sub




Yukardaki örnekte, aynı nümerik bilginin 5 farklı basamak sayısına göre yazı ile gösterilmesi istenmiştir. Aşağıdaki mesaj kutusunda ise örneğin sonucu gösterilmiştir. Ondalık kısmı 3 (üç) basamak olan sayı için, BasamakSayısı parametresinde 4 (dört) girildiği durumda, fonksiyon dördüncü basamak sayısı değerini 0 (sıfır) kabul edip çevrim işlemini yapmıştır.



Paylaşım Makrosu