Cách đọc đúng của đồng USD bằng tiếng việt:

Liên hệ QC

Phuongle88ls

Thành viên mới
Tham gia
13/7/20
Bài viết
29
Được thích
11
- VD: 123,50 USD thì đọc cách nào dưới đây thì đúng
1. Một trăm hai mươi ba Đô la Mỹ và năm mươi Cent
2. Một trăm hai mươi ba Đô la Mỹ và năm Cent
- Mình có cài phần mềm acchelper để chuyển đổi số thành chữ. Nhưng khi mình tắt đi vào lại là p cài lại từ đầu. Mình đang dùng excel2010. Còn excel 2013 thì k bị
 
Nhưng khi mình cài phần mềm thì lại đọc ra cách thứ 2. Thì có cách nào chỉnh sửa đc k
Và Mình có cài phần mềm acchelper để chuyển đổi số thành chữ. Nhưng khi mình tắt đi vào lại là p cài lại từ đầu. Mình đang dùng excel2010. Còn excel 2013 thì k bị. Thì lỗi này sửa thế nào
 

File đính kèm

  • z1998475643178_5cde6b74b59e684ffbaa269fbdd76601.jpg
    z1998475643178_5cde6b74b59e684ffbaa269fbdd76601.jpg
    88.7 KB · Đọc: 40
- VD: 123,50 USD thì đọc cách nào dưới đây thì đúng
1. Một trăm hai mươi ba Đô la Mỹ và năm mươi Cent
2. Một trăm hai mươi ba Đô la Mỹ và năm Cent
- Mình có cài phần mềm acchelper để chuyển đổi số thành chữ. Nhưng khi mình tắt đi vào lại là p cài lại từ đầu. Mình đang dùng excel2010. Còn excel 2013 thì k bị
Theo quy định mới nhất của Cục Dự trữ Liên bang Hoa Kỳ, 1 USD sẽ bằng 100 Cent. Tương tự, 10 USD sẽ bằng 1.000 Cent100 USD sẽ bằng 10.000 Cent.
=> 1. đúng bạn nha !

"Mình có cài phần mềm acchelper để chuyển đổi số thành chữ. Nhưng khi mình tắt đi vào lại là p cài lại từ đầu. Mình đang dùng excel2010. Còn excel 2013 thì k bị" => mình chưa hiểu lắm.

à, bạn đừng viết tắt nha!
 
Nhưng khi mình cài phần mềm thì lại đọc ra cách thứ 2. Thì có cách nào chỉnh sửa đc k
Và Mình có cài phần mềm acchelper để chuyển đổi số thành chữ. Nhưng khi mình tắt đi vào lại là p cài lại từ đầu. Mình đang dùng excel2010. Còn excel 2013 thì k bị. Thì lỗi này sửa thế nào
Vậy thì "phần mềm" sai.
1. Phản hồi với tác giả để họ sửa.
2. Tìm cái khác thay thế.
 
Theo quy định mới nhất của Cục Dự trữ Liên bang Hoa Kỳ, 1 USD sẽ bằng 100 Cent. Tương tự, 10 USD sẽ bằng 1.000 Cent100 USD sẽ bằng 10.000 Cent.
=> 1. đúng bạn nha !

"Mình có cài phần mềm acchelper để chuyển đổi số thành chữ. Nhưng khi mình tắt đi vào lại là p cài lại từ đầu. Mình đang dùng excel2010. Còn excel 2013 thì k bị" => mình chưa hiểu lắm.

à, bạn đừng viết tắt nha!
Mình có cài phần mềm acchelper để chuyển đổi số thành chữ. Nhưng khi mình thoát bản excel đó ra rồi vào lại bản excel thì lại phải vào cài lại acchelper. Mình đang dùng excel 2010. Còn excel 2013 thì k bị.
 
Mình có cài phần mềm acchelper để chuyển đổi số thành chữ. Nhưng khi mình thoát bản excel đó ra rồi vào lại bản excel thì lại phải vào cài lại acchelper. Mình đang dùng excel 2010. Còn excel 2013 thì k bị.
Chắc là office 2010 máy đó bị lỗi gì á bạn.
Mà bên Excel 2013 bạn đọc bằng hàm gì? VND hay USD ?
 
- VD: 123,50 USD thì đọc cách nào dưới đây thì đúng
1. Một trăm hai mươi ba Đô la Mỹ và năm mươi Cent
2. Một trăm hai mươi ba Đô la Mỹ và năm Cent
- Mình có cài phần mềm acchelper để chuyển đổi số thành chữ. Nhưng khi mình tắt đi vào lại là p cài lại từ đầu. Mình đang dùng excel2010. Còn excel 2013 thì k bị
Góp ý cho bạn:
1/ Nếu bạn thấy phần mềm acchelper sử dụng khó quá và chưa phù hợp với nội dung bạn cần thì có thể nhờ các thành viên trên diễn đàn GPE trợ giúp viết code rồi lưu thành Add-in.
2/ Muốn GPE trợ giúp viết code thì nên đăng bài trong Box Lập trình với Excel.
 
Nhưng khi mình cài phần mềm thì lại đọc ra cách thứ 2. Thì có cách nào chỉnh sửa đc k
Và Mình có cài phần mềm acchelper để chuyển đổi số thành chữ. Nhưng khi mình tắt đi vào lại là p cài lại từ đầu. Mình đang dùng excel2010. Còn excel 2013 thì k bị. Thì lỗi này sửa thế nào
của mình sao nó đọc thành tiếng anh nhỉ
 
Chắc là office 2010 máy đó bị lỗi gì á bạn.
Mà bên Excel 2013 bạn đọc bằng hàm gì? VND hay USD ?
Mình đọc bằng hàm VND(A1,,"Đô la Mỹ","Cent")
Bài đã được tự động gộp:

Chờ một câu nói mà không thấy. Chẵng lẽ mặt dày tự gửi lên.

View attachment 242049
Hướng dẫn mình hàm đọc ra giá trị A2 với
 
Mã:
Function DocSoTien(ByVal SoTien As Double, Dong As String, Xu As String) As String
Dim Nguyen As Double, Le As Long
SoTien = Round(SoTien, 2)
Nguyen = Int(SoTien)
Le = (SoTien - Nguyen) * 100
DocSoTien = DocSo(Nguyen) & " " & Dong
If Le <> 0 Then
    DocSoTien = DocSoTien & " v" & ChrW(224) & " " & DocSo(Le) & " " & Xu
End If
Mid(DocSoTien, 1, 1) = UCase(Mid(DocSoTien, 1, 1))
End Function
Private Function DocSo(ByVal SoTien As Double) As String
Dim MyArray As Variant
Dim Str As String
Str = Format(Abs(SoTien), "000000000000000000")
MyArray = Array("không ", "m" & ChrW(7897) & "t ", "hai ", "ba ", "b" & ChrW(7889) & "n ", "n" & ChrW(259) & "m ", "sáu ", "b" & ChrW(7843) & "y ", "tám ", "chín ", "tri" & ChrW(7879) & "u, ", "ngàn, ", "t" & ChrW(7927) & ", ", "tri" & ChrW(7879) & "u, ", "ngàn, ", "", "tr" & ChrW(259) & "m ", "m" & ChrW(432) & ChrW(417) & "i ", "không " & "m" & ChrW(432) & ChrW(417) & "i" & " không ", "không " & "m" & ChrW(432) & ChrW(417) & "i", "l" & ChrW(7867), "m" & ChrW(432) & ChrW(417) & "i" & " không", "m" & ChrW(432) & ChrW(417) & "i", "m" & ChrW(432) & ChrW(417) & "i" & " n" & ChrW(259) & "m", "m" & ChrW(432) & ChrW(417) & "i" & " l" & ChrW(259) & "m", "m" & ChrW(7897) & "t " & "m" & ChrW(432) & ChrW(417) & "i", "m" & ChrW(432) & ChrW(7901) & "i", "m" & ChrW(432) & ChrW(417) & "i" & " m" & ChrW(7897) & "t", "m" & ChrW(432) & ChrW(417) & "i" & " m" & ChrW(7889) & "t", "Âm ")
If Str = "000000000000000000" Then
    DocSo = UCase(Left(MyArray(0), 1)) & Trim(Mid(MyArray(0), 2)) & "."
    Exit Function
End If
For i = 1 To Len(Str)
If Left(Str, i) <> 0 And Mid(Str, (Int((i + 2) / 3) - 1) * 3 + 1, 3) <> 0 Then
    DocSo = DocSo & MyArray(Mid(Str, i, 1)) & MyArray(-(9 + i / 3) * (i Mod 3 = 0) - (15 + i Mod 3) * (i Mod 3 <> 0))
ElseIf i = 9 And Mid(Str, 7, 3) = 0 And Left(Str, 6) <> 0 Then
    DocSo = DocSo & MyArray(12)
End If
Next
DocSo = Trim(Replace(Replace(Replace(Replace(Replace(Replace(DocSo, MyArray(18), MyArray(15)), MyArray(19), MyArray(20)), MyArray(21), MyArray(22)), MyArray(23), MyArray(24)), MyArray(25), MyArray(26)), MyArray(27), MyArray(28)))
If SoTien < 0 Then
DocSo = MyArray(29) & DocSo
End If
DocSo = Replace(Replace(DocSo & ".", ",.", "."), ".", "")
End Function
 
Mã:
Function DocSoTien(ByVal SoTien As Double, Dong As String, Xu As String) As String
Dim Nguyen As Double, Le As Long
SoTien = Round(SoTien, 2)
Nguyen = Int(SoTien)
Le = (SoTien - Nguyen) * 100
DocSoTien = DocSo(Nguyen) & " " & Dong
If Le <> 0 Then
    DocSoTien = DocSoTien & " v" & ChrW(224) & " " & DocSo(Le) & " " & Xu
End If
Mid(DocSoTien, 1, 1) = UCase(Mid(DocSoTien, 1, 1))
End Function
Private Function DocSo(ByVal SoTien As Double) As String
Dim MyArray As Variant
Dim Str As String
Str = Format(Abs(SoTien), "000000000000000000")
MyArray = Array("không ", "m" & ChrW(7897) & "t ", "hai ", "ba ", "b" & ChrW(7889) & "n ", "n" & ChrW(259) & "m ", "sáu ", "b" & ChrW(7843) & "y ", "tám ", "chín ", "tri" & ChrW(7879) & "u, ", "ngàn, ", "t" & ChrW(7927) & ", ", "tri" & ChrW(7879) & "u, ", "ngàn, ", "", "tr" & ChrW(259) & "m ", "m" & ChrW(432) & ChrW(417) & "i ", "không " & "m" & ChrW(432) & ChrW(417) & "i" & " không ", "không " & "m" & ChrW(432) & ChrW(417) & "i", "l" & ChrW(7867), "m" & ChrW(432) & ChrW(417) & "i" & " không", "m" & ChrW(432) & ChrW(417) & "i", "m" & ChrW(432) & ChrW(417) & "i" & " n" & ChrW(259) & "m", "m" & ChrW(432) & ChrW(417) & "i" & " l" & ChrW(259) & "m", "m" & ChrW(7897) & "t " & "m" & ChrW(432) & ChrW(417) & "i", "m" & ChrW(432) & ChrW(7901) & "i", "m" & ChrW(432) & ChrW(417) & "i" & " m" & ChrW(7897) & "t", "m" & ChrW(432) & ChrW(417) & "i" & " m" & ChrW(7889) & "t", "Âm ")
If Str = "000000000000000000" Then
    DocSo = UCase(Left(MyArray(0), 1)) & Trim(Mid(MyArray(0), 2)) & "."
    Exit Function
End If
For i = 1 To Len(Str)
If Left(Str, i) <> 0 And Mid(Str, (Int((i + 2) / 3) - 1) * 3 + 1, 3) <> 0 Then
    DocSo = DocSo & MyArray(Mid(Str, i, 1)) & MyArray(-(9 + i / 3) * (i Mod 3 = 0) - (15 + i Mod 3) * (i Mod 3 <> 0))
ElseIf i = 9 And Mid(Str, 7, 3) = 0 And Left(Str, 6) <> 0 Then
    DocSo = DocSo & MyArray(12)
End If
Next
DocSo = Trim(Replace(Replace(Replace(Replace(Replace(Replace(DocSo, MyArray(18), MyArray(15)), MyArray(19), MyArray(20)), MyArray(21), MyArray(22)), MyArray(23), MyArray(24)), MyArray(25), MyArray(26)), MyArray(27), MyArray(28)))
If SoTien < 0 Then
DocSo = MyArray(29) & DocSo
End If
DocSo = Replace(Replace(DocSo & ".", ",.", "."), ".", "")
End Function
Hi hi Em đã làm được và sửa theo ý mình 1 chút, Cảm ơn anh nhiều
 

File đính kèm

  • 1.JPG
    1.JPG
    44.4 KB · Đọc: 32
@huuthang_bd với hàm của bác =DocSoTien(123123456789000,"","") ra kết quả "Một trăm hai mươi ba ngàn, một trăm hai mươi ba tỷ, bốn trăm năm mươi sáu triệu, bảy trăm tám mươi chín ngàn ". Em nghĩ kết quả là "Một trăm hai mươi ba ngàn tỷ, một trăm hai mươi ba tỷ, bốn trăm năm mươi sáu triệu, bảy trăm tám mươi chín ngàn"
Hoặc =DocSoTien(10^12,"","") ra kết quả "Một ngàn, tỷ", em nghĩ nên là "Một ngàn tỷ".
 
@huuthang_bd với hàm của bác =DocSoTien(123123456789000,"","") ra kết quả "Một trăm hai mươi ba ngàn, một trăm hai mươi ba tỷ, bốn trăm năm mươi sáu triệu, bảy trăm tám mươi chín ngàn ". Em nghĩ kết quả là "Một trăm hai mươi ba ngàn tỷ, một trăm hai mươi ba tỷ, bốn trăm năm mươi sáu triệu, bảy trăm tám mươi chín ngàn"
Hoặc =DocSoTien(10^12,"","") ra kết quả "Một ngàn, tỷ", em nghĩ nên là "Một ngàn tỷ".
Đọc "Một ngàn, tỷ" thì đúng là sai, code bên dưới đã sửa lại. Còn trường hợp kia tôi nghĩ là đọc như code là đúng, cái này còn tùy từng người nữa.
Mã:
Function DocSoTien(ByVal SoTien As Double, Dong As String, Xu As String) As String
    Dim Nguyen As Double, Le As Long
    SoTien = Round(SoTien, 2)
    Nguyen = Int(SoTien)
    Le = (SoTien - Nguyen) * 100
    DocSoTien = DocSo(Nguyen) & " " & Dong
    If Le <> 0 Then
        DocSoTien = DocSoTien & " v" & ChrW(224) & " " & DocSo(Le) & " " & Xu
    End If
    Mid(DocSoTien, 1, 1) = UCase(Mid(DocSoTien, 1, 1))
End Function
Private Function DocSo(ByVal SoTien As Double) As String
    Dim MyArray As Variant
    Dim Str As String
    Str = Format(Abs(SoTien), "000000000000000000")
    MyArray = Array("không ", "m" & ChrW(7897) & "t ", "hai ", "ba ", "b" & ChrW(7889) & "n ", "n" & ChrW(259) & "m ", "sáu ", "b" & ChrW(7843) & "y ", "tám ", "chín ", "tri" & ChrW(7879) & "u, ", "ngàn, ", "t" & ChrW(7927) & ", ", "tri" & ChrW(7879) & "u, ", "ngàn, ", "", "tr" & ChrW(259) & "m ", "m" & ChrW(432) & ChrW(417) & "i ", "không " & "m" & ChrW(432) & ChrW(417) & "i" & " không ", "không " & "m" & ChrW(432) & ChrW(417) & "i", "l" & ChrW(7867), "m" & ChrW(432) & ChrW(417) & "i" & " không", "m" & ChrW(432) & ChrW(417) & "i", "m" & ChrW(432) & ChrW(417) & "i" & " n" & ChrW(259) & "m", "m" & ChrW(432) & ChrW(417) & "i" & " l" & ChrW(259) & "m", "m" & ChrW(7897) & "t " & "m" & ChrW(432) & ChrW(417) & "i", "m" & ChrW(432) & ChrW(7901) & "i", "m" & ChrW(432) & ChrW(417) & "i" & " m" & ChrW(7897) & "t", "m" & ChrW(432) & ChrW(417) & "i" & " m" & ChrW(7889) & "t", "Âm ")
    If Str = "000000000000000000" Then
        DocSo = MyArray(0)
        Exit Function
    End If
    For i = 1 To Len(Str)
        If Left(Str, i) <> 0 And Mid(Str, (Int((i + 2) / 3) - 1) * 3 + 1, 3) <> 0 Then
            DocSo = DocSo & MyArray(Mid(Str, i, 1)) & MyArray(-(9 + i / 3) * (i Mod 3 = 0) - (15 + i Mod 3) * (i Mod 3 <> 0))
        ElseIf i = 9 And Mid(Str, 7, 3) = 0 And Left(Str, 6) <> 0 Then
            DocSo = DocSo & MyArray(12)
        End If
    Next
    DocSo = Replace(DocSo, ", " & MyArray(12), " " & MyArray(12))
    DocSo = Trim(Replace(Replace(Replace(Replace(Replace(Replace(DocSo, MyArray(18), MyArray(15)), MyArray(19), MyArray(20)), MyArray(21), MyArray(22)), MyArray(23), MyArray(24)), MyArray(25), MyArray(26)), MyArray(27), MyArray(28)))
    If SoTien < 0 Then
        DocSo = MyArray(29) & DocSo
    End If
    DocSo = Replace(Replace(DocSo & ".", ",.", "."), ".", "")
End Function
 
Thắc mắc: lý do tại sao năm mươi Cent mà không phải là năm mươi Cents hoặc năm mươi Xu ?
 
Web KT
Back
Top Bottom