今天整理文件时发现了以前写的货币金额中文转换(转换一亿亿元以下数目的货币)的代码,帖出来与大家共享:
Function daxie(money As String) As String '
Dim x As String, y As String
Const zimu = ".sbqwsbqysbqwsbq" '定义位置代码
Const letter = "0123456789sbqwy.zjf" '定义汉字缩写
Const upcase = "零壹贰叁肆伍陆柒捌玖拾佰仟萬億圆整角分" '定义大写汉字
Dim temp As String
temp = money
If InStr(temp, ".") > 0 Then temp = Left(temp, InStr(temp, ".") - 1)
If Len(temp) > 16 Then MsgBox "数目太大,无法换算!请输入一亿亿以下的数字", 64, "错误提示": Exit Function '只能转换一亿亿元以下数目的货币!
x = Format(money, "0.00") '格式化货币
y = ""
For i = 1 To Len(x) - 3
y = y & Mid(x, i, 1) & Mid(zimu, Len(x) - 2 - i, 1)
Next
If Right(x, 3) = ".00" Then
y = y & "z" '***元整
Else
y = y & Left(Right(x, 2), 1) & "j" & Right(x, 1) & "f" '*元*角*分
End If
y = Replace(y, "0q", "0") '避免零千(如:40200肆萬零千零贰佰)
y = Replace(y, "0b", "0") '避免零百(如:41000肆萬壹千零佰)
y = Replace(y, "0s", "0") '避免零十(如:204贰佰零拾零肆)
Do While y <> Replace(y, "00", "0")
y = Replace(y, "00", "0") '避免双零(如:1004壹仟零零肆)
Loop
y = Replace(y, "0y", "y") '避免零億(如:210億 贰佰壹十零億)
y = Replace(y, "0w", "w") '避免零萬(如:210萬 贰佰壹十零萬)
y = IIf(Len(x) = 5 And Left(y, 1) = "1", Right(y, Len(y) - 1), y) '避免壹十(如:14壹拾肆;10壹拾)
y = IIf(Len(x) = 4, Replace(y, "0.", ""), Replace(y, "0.", ".")) '避免零元(如:20.00贰拾零圆;0.12零圆壹角贰分)
For i = 1 To 19
y = Replace(y, Mid(letter, i, 1), Mid(upcase, i, 1)) '大写汉字
Next
daxie = y
End Function
Private Sub Command3_Click()
Debug.Print daxie("6218212212309322.3238") ' return: 陆仟贰佰壹拾捌萬贰仟壹佰贰拾贰億壹仟贰佰叁拾萬玖仟叁佰贰拾贰圆叁角贰分
End Sub
分享到:
相关推荐
通过理解以上知识点,你可以掌握在VB中实现货币金额大小写转换的基本方法,并能根据实际需求扩展功能,如增加其他货币类型的支持,或者提供更复杂的格式化选项。学习和实践这一过程,对于提升VB编程技能和理解财务...
本问题涉及的是一个具体的C++程序设计任务:将小写金额转换为大写的中文表示。这个功能在财务软件、银行系统或者会计应用中非常有用,因为它能够帮助确保金额的正确性和规范性。 在中文中,大写金额的表示法与小写...
中文金额通常以大写汉字表示,如“壹”、“贰”等,而英文金额则遵循特定的语法结构,如"$1,234.56"。转换过程涉及对数字进行拆分、映射和组合。 1. **字符串映射法**:这是最直观的方法,通过创建一个包含数字与...
在编程中,我们需要编写函数或程序来实现小写金额到大写金额的转换。这个过程涉及到数字与中文字符的对应关系,以及特定规则的应用。 转换规则如下: 1. **个位到十位**:0对应“零”,1对应“壹”,2对应“贰”,...
本项目聚焦于一个特定的实用功能——“DELPHI实现货币小写转换大写”,这是一个在财务软件或者相关应用中常见的需求。人民币在书写时,大写用于正式的财务凭证,以增加数据的准确性,防止篡改。以下将详细阐述这个...
本文将详细讲解如何在C#中实现货币金额到中文大写的转换,以及相关的编程技巧。 首先,我们需要了解中文大写数字的基本规则。中文大写数字从零到九分别是:零、壹、贰、叁、肆、伍、陆、柒、捌、玖。整数部分按照个...
### 金额小写转换为大写的程序解析 在金融、会计以及其他涉及货币处理的应用场景中,将数字金额转换成汉字大写格式是非常常见的需求。这种转换不仅有助于提高数据的可读性,还能够减少因小数点误读而引发的错误。...
这个"小写金额转换成大写金额源码1.0"是一个程序,其主要功能是将小写的数字金额转换为符合中国传统货币书写习惯的大写金额。这种转换对于财务报表、发票开具以及银行交易等场景非常实用,可以避免因手写或打印错误...
在IT行业中,尤其是在财务软件开发或者处理金融数据时,经常需要将阿拉伯数字(小写)转换为汉字大写,这是因为汉字大写数字在中国的金融交易中是标准的表示方式,可以有效防止因为数字混淆而引起的错误。...
用C语言编写的金额兑换程序,可以将数字转化为汉字大写,
这个DLL库的出现,为开发者提供了一个便捷的工具,能够自动将阿拉伯数字形式的人民币金额转换为汉字大写,同时也支持到"兆"位的转换以及负数的处理。以下是对这个知识点的详细说明: 1. **DLL库(Dynamic Link ...
在C#编程环境中,开发一个人民币大小写转换程序是一项实用的任务,这主要涉及到字符串处理、数字格式化以及中文字符的拼接。以下是一些相关的知识点: 1. **字符串操作**: - `ToString()` 方法:将数值转换为字符...
在金融行业,特别是在财务系统中,处理货币数字时,经常需要将小写的金额转换为大写的汉字形式,以避免因数字混淆而引发的错误。"人民币小写转大写的程序"就是一个这样的解决方案,用于将诸如“123456.78”这样的...
本项目"winform C#人民币大小写金额转换程序"是一个实用工具,旨在帮助用户将输入的数字金额自动转换为规范的中文大写,这在财务报表、发票和合同中非常常见,因为中文大写可以避免因数字篡改而引发的争议。...
在这个“易语言金额大写转换工具源码.7z”压缩包中,包含的是一个易语言编写的程序,用于将数字金额转换为中文大写,这是在财务、会计等领域经常需要的功能,特别是在填写支票或进行正式财务记录时。 易语言的语法...
"js金额小写转大写脚本"指的是JavaScript编程语言中用于将小写的货币金额(阿拉伯数字)转换为大写的汉字数字的代码片段。这样的脚本有助于提高财务报表的可读性和规范性,因为在中国,正式的财务文档通常要求金额以...
这个工具的主要功能是将阿拉伯数字形式的人民币金额自动转换成规范的大写汉字形式,确保了填写的准确性,避免了因为书写错误导致的财务纠纷。 首先,我们来了解一下人民币大写的书写规则。在中国,为了防止篡改,...
总的来说,“人民币金额小写转换大写”的实现涉及了字符串操作、字符映射、循环和条件判断等基本编程概念,是Java编程中的一个实用技巧,尤其在处理财务数据时非常有用。通过阅读和理解`TransformMoney.java`的代码...
在这个特定的场景中,我们关注的是如何使用Java来实现货币转换的功能,特别是将数字转化为大写汉字,这是财务和会计领域中常见的需求,以确保金额的清晰性和准确性。 货币转换涉及到的主要知识点包括: 1. **数字...