Chuyển số thập phân VD: 123.234,123 thành chữ

Liên hệ QC

tothuy1811

Thành viên mới
Tham gia
20/2/13
Bài viết
4
Được thích
0
Các bạn giúp mình chuyển từ số thập phân sang chữ với, vd
123,123
thành một trăm hai mươi ba ngàn một trăm hai mươi ba đồng chẵn.
mình làm được nhưng chỉ là số tự nhiên còn thập phân thì không ra được.

cám ơn các bạn nhiều.
 
Các bạn giúp mình chuyển từ số thập phân sang chữ với, vd
123,123
thành một trăm hai mươi ba ngàn một trăm hai mươi ba đồng chẵn.
mình làm được nhưng chỉ là số tự nhiên còn thập phân thì không ra được.

cám ơn các bạn nhiều.

bạn tham khảo file của Thầy ndu nhé, và xem luôn topic này nữa
http://www.giaiphapexcel.com/forum/showthread.php?10557-Đọc-số-bằng-chữ-dùng-Name
, hay lắm đó, nếu muốn nhanh gọn hơn nữa thì dùng vba, cop đoạn code các Thầy lập trình sẵn cho nó chạy.
 

File đính kèm

  • Copy of VND_01.xls
    44 KB · Đọc: 65
bạn có thể hướng dẫn cụ thể mình không, mình down file về và ko biết làm thế nào nữa.
hic. thank bạn trc nha...
 
Vụ đọc số thập phân có nhiều, nhưng đọc với đơn vị tính bất kỳ thì hơi ít.


tham số thứ 4 DecNum là số chữ số thập phân cần đọc. Như vậy nếu DecNum =1, có thể đọc tấn, tạ. Nếu DecNum =3 có thể đọc Tấn, Kilogram. Và đương nhiên DecNum=2 sẽ đọc Mét, Centimet.
Các đơn vị không phải tiền tệ cho vào 2 tham số thứ 2 và 3

Xem file kèm theo, muốn thành addin thì xóa trắng và lưu dạng xla
 

File đính kèm

  • SayPtmNew.xls
    77 KB · Đọc: 56
saye(A1,"ton","Kg",3)
sayuni(A3,"Ký","gam",3)
Em không hiểu chỗ màu xanh, nó là hàm tự tạo ạ?
 
thanks các bạn, nhưng file của bạn @nhất chi mai, rồi thì làm sao....mình muốn mỗi lần mở excel là nó đã tích hợp sẵn chì cần type công thức =vnd() là nó ra luôn
bạn nào biết hướng dẫn mình cụ thể với, mình hơi gà. thank các bạn nh lắm
 
thấy hay nên góp vui tí.--=0--=0)(&&@@)(&&@@)(&&@@)(&&@@)(&&@@)(&&@@
 

File đính kèm

  • VND.xls
    30 KB · Đọc: 29
thấy hay nên góp vui tí.--=0--=0)(&&@@)(&&@@)(&&@@)(&&@@)(&&@@)(&&@@

đoạn code này bạn viết có thể thay đổi kiểu đếm giống Thầy PTM được không
Function SoRaChu(ByVal NumCurrency As Currency) As String
If NumCurrency = 0 Then
SoRaChu = "Kh«ng ®ång"
Exit Function
End If
If NumCurrency > 922337203685477# Then ' Sè lín nhÊt cña lo¹i CURRENCY
SoRaChu = "Kh«ng ®æi ®­îc sè lín hn 922,337,203,685,477"
Exit Function
End If
Static CharVND(9) As String, BangChu As String, i As Integer
Dim SoLe, SoDoi As Integer, PhanChan, Ten As String
Dim DonViTien As String, DonViLe As String
Dim NganTy As Integer, Ty As Integer, Trieu As Integer, Ngan As Integer
Dim Dong As Integer, Tram As Integer, Muoi As Integer, DonVi As Integer

DonViTien = "®ång" ' B¹n cã thÓ thay ®n vÞ tiÒn tÖ kh¸c ë ®©y
DonViLe = "xu"

CharVND(1) = "mét"
CharVND(2) = "hai"
CharVND(3) = "ba"
CharVND(4) = "bèn"
CharVND(5) = "n¨m"
CharVND(6) = "s¸u"
CharVND(7) = "b¶y"
CharVND(8) = "t¸m"
CharVND(9) = "chÝn"

SoLe = Int((NumCurrency - Int(NumCurrency)) * 100) '2 kÝ sè lÎ
PhanChan = Trim$(Str$(Int(NumCurrency)))
PhanChan = Space(15 - Len(PhanChan)) + PhanChan

NganTy = Val(Left(PhanChan, 3))
Ty = Val(Mid$(PhanChan, 4, 3))
Trieu = Val(Mid$(PhanChan, 7, 3))
Ngan = Val(Mid$(PhanChan, 10, 3))
Dong = Val(Mid$(PhanChan, 13, 3))
If NganTy = 0 And Ty = 0 And Trieu = 0 And Ngan = 0 And Dong = 0 Then
BangChu = "kh«ng " + DonViTien + " "
i = 5
Else
BangChu = ""
i = 0
End If
While i <= 5
Select Case i
Case 0
SoDoi = NganTy
Ten = "ngµn tû"
Case 1
SoDoi = Ty
Ten = "tû"
Case 2
SoDoi = Trieu
Ten = "triÖu"
Case 3
SoDoi = Ngan
Ten = "ngµn"
Case 4
SoDoi = Dong
Ten = DonViTien
Case 5
SoDoi = SoLe
Ten = DonViLe
End Select
If SoDoi <> 0 Then
Tram = Int(SoDoi / 100)
Muoi = Int((SoDoi - Tram * 100) / 10)
DonVi = (SoDoi - Tram * 100) - Muoi * 10
BangChu = Trim(BangChu) + IIf(Len(BangChu) = 0, "", ", ") + _
IIf(Tram <> 0, Trim(CharVND(Tram)) + " tr¨m ", "")
If Muoi = 0 And Tram <> 0 And DonVi <> 0 Then
BangChu = BangChu '+ "lÎ "
Else
If Muoi <> 0 Then
BangChu = BangChu + IIf(Muoi <> 0 And Muoi <> 1, _
Trim(CharVND(Muoi)) + " m­¬i ", "m­êi ")
End If
End If

If Muoi <> 0 And DonVi = 5 Then
BangChu = BangChu + "l¨m " + Ten + " "
Else
If Muoi > 1 And DonVi = 1 Then
BangChu = BangChu + "mèt " + Ten + " "
Else
BangChu = BangChu + IIf(DonVi <> 0, Trim(CharVND(DonVi)) + " " + Ten + " ", Ten + " ")
End If
End If
Else
BangChu = BangChu + IIf(i = 4, DonViTien + " ", "")
End If
i = i + 1
Wend
If SoLe = 0 Then
BangChu = BangChu + "ch½n"
End If
Mid$(BangChu, 1, 1) = UCase$(Mid$(BangChu, 1, 1))
SoRaChu = BangChu
End Function
 
down file giúp đổi số thành chữ nhưng không dược, tôi phải làm sao?

tôi đã down file ve, nhưng file báo; this workbook contains one or more Microsoft excel 4.0 macro. These macros may contain virut or harmfuol code. These macros will be disable.
Sau khi bấm ok thì lại bị lỗi số không đúng
Nhờ các cao thủ chỉ giáo lại giúp ạ)
 
Web KT
Back
Top Bottom