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 hơn 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 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ẻ I = 1 PhanChan = Trim$(Str$(Int(NumCurrency))) While Len(PhanChan) > 0 Select Case I Case 1 'Dong Dong = Val(Right$(PhanChan, 3)) PhanChan = Left$(PhanChan, Len(PhanChan) - Len(Trim$(Str$(Dong)))) Case 2 'Ngan Ngan = Val(Right$(PhanChan, 3)) PhanChan = Left$(PhanChan, Len(PhanChan) - Len(Trim$(Str$(Ngan)))) Case 3 'Trieu Trieu = Val(Right$(PhanChan, 3)) PhanChan = Left$(PhanChan, Len(PhanChan) - Len(Trim$(Str$(Trieu)))) Case 4 'Ty Ty = Val(Right$(PhanChan, 3)) PhanChan = Left$(PhanChan, Len(PhanChan) - Len(Trim$(Str$(Ty)))) Case 5 'Ngan Ty NganTy = Val(Right$(PhanChan, 3)) PhanChan = Left$(PhanChan, Len(PhanChan) - Len(Trim$(Str$(NganTy)))) End Select I = I + 1 Wend If NganTy = 0 And Ty = 0 And Trieu = 0 And Ngan = 0 And Dong = 0 Then BangChu = "không đồng " I = 5 Else BangChu = "" I = 0 End If While I <= 5 ‘ Bắt đầu đổi 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 = "đồng" Case 5 SoDoi = SoLe Ten = "xu" End Select If SoDoi <> 0 Then Tram = Int(SoDoi / 100) Muoi = Int((SoDoi - Tram * 100) / 10) DonVi = (SoDoi - Tram * 100) - Muoi * 10 BangChu = BangChu + IIf(Tram <> 0, 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,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 <> 0 And Muoi <> 1 And DonVi = 1 Then BangChu = BangChu + "mốt " + Ten + " " Else BangChu = BangChu + IIf(DonVi <> 0, CharVND(DonVi) + " " + Ten + " ", Ten + " ") End If End If Else BangChu = BangChu + IIf(I = 4, "đồng ", "") 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 |
All comments [ 0 ]
Your comments