Private Function RMBChinese(ByVal Rmb As Double) As String
Dim Rmbexp As String 
Dim Rmbda As String 
Dim Icnt As Integer 
Dim i As Integer 
Dim Trmb As String
Dim Expda As String 
Dim v1 As Integer = 0

Trmb = Format(Rmb, "###0.00")
Trmb = Trmb.Replace(".", "")
Icnt = Len(Trmb)

Rmbexp = "分角元拾佰仟萬拾佰仟億拾佰仟"

Rmbda = "壹貳叁肆伍陸柒捌玖零"

For i = 1 To Icnt

If i < Icnt - 2 Then
If Val(Mid(Trmb, i, 1)) > 0 Then
Expda = Expda & Mid(Rmbda, Val(Mid(Trmb, i, 1)), 1)
Expda = Expda & Mid(Rmbexp, Icnt - i + 1, 1)
End If
End If

If i < Icnt - 6 And i > Icnt - 10 Then
If Val(Mid(Trmb, i, 1)) > 0 Then
v1 = 1
End If
End If

If i = Icnt - 6 Then
If Val(Mid(Trmb, Icnt - 6, 1)) = 0 Then
If v1 > 0 Then
Expda = Expda & "萬"
End If
End If
v1 = 0
End If

If i = Icnt - 10 Then
If Val(Mid(Trmb, Icnt - 10, 1)) = 0 Then
Expda = Expda & "億"
End If
End If

If Icnt > 4 And Val(Mid(Trmb, i, 1)) = 0 Then
If i < Icnt - 2 Then
If Val(Mid(Trmb, i + 1, 1)) > 0 Then
Expda = Expda & "零"
End If
End If
End If

If i = Icnt - 2 And Val(Mid(Trmb, Icnt - 2, 1)) = 0 Then
Expda = Expda & Mid(Rmbexp, 3, 1)
End If

If i = Icnt - 2 And Val(Mid(Trmb, Icnt - 2, 1)) > 0 Then
Expda = Expda & Mid(Rmbda, Val(Mid(Trmb, Icnt - 2, 1)), 1)
Expda = Expda & Mid(Rmbexp, 3, 1)
End If

If i = Icnt - 1 And Val(Mid(Trmb, Icnt - 1, 1)) > 0 Then
Expda = Expda & Mid(Rmbda, Val(Mid(Trmb, Icnt - 1, 1)), 1)
Expda = Expda & Mid(Rmbexp, 2, 1)
End If

If i = Icnt And Val(Mid(Trmb, Icnt, 1)) > 0 Then
Expda = Expda & Mid(Rmbda, Val(Mid(Trmb, Icnt, 1)), 1)
Expda = Expda & Mid(Rmbexp, 1, 1)
End If

If i = Icnt And Mid(Trmb, Icnt, 1) = "0" And Mid(Trmb, Icnt - 1, 1) = "0" Then
Expda = Expda & "整"
End If
Next

If Icnt <= 14 Then
Expda = "人民幣" & Expda
RMBChinese = Expda
Else
RMBChinese = "需转换的金额整数长度超过了12位!"
End If

End Function

vb.net 数字大写的更多相关文章

  1. js完美转换阿拉伯数字为数字大写(原创)

    啥都不说,直接上代码: //阿拉伯数字转换为简写汉字 function Arabia_To_SimplifiedChinese(Num) { for (i = Num.length - 1; i &g ...

  2. php把阿拉伯数字转为银行数字大写

    php把阿拉伯数字转为银行数字大写 前言:之前在做一个外贸公司的询报价系统时用到了记录关于金额的数据,一般阿拉伯数字都需要转为银行使用的大写数字,在这简单记录一下 /* * 数字金额转换成中文大写金额 ...

  3. 将日期yyyy-MM-dd转为数字大写的形式

    /** * 将日期转大写 * 例如:2013-05-13转为 二0一三年五月十三日 * @param date * @return */ public static String getDxDate( ...

  4. Java实现数字大写转换

    需求如下:用json读取后台工时信息,比如23.5小时,需要通过编码将其转换为贰拾叁点伍 比如23.23之前有对Stringl类型强转为Double在转为整型,发生了精度丢失,后来想想对小数点进行分割 ...

  5. java开发_数字转换汉语中人民币的大写_完整版

    做这个应用,源于突然的一个想法:看到发票上面的数字要转换成汉语中人民币的大写 于是就有了下面的这些事儿..... 先看看运行效果: ================================== ...

  6. java实现数字转中文大写

    package cn.aikang.ChineseC; import java.util.Scanner; /** * @Description: TODO(这里用一句话描述这个类的作用) * @Au ...

  7. Java货币金额转换为大写形式

    package com.test; import java.math.BigDecimal; /** * * * 数字转换为汉语中人民币的大写<br> * */ public class ...

  8. Java随机字符串:随机数字字符串,工具类

    Java中生成随机数,字符串的工具类 1. 调用方法需要传入生成字符串的长度和需要的类型 生成随机数字 生成随机字母字符串 生成随机字符串+数字等 ......... 2. 总共8种类型,具体看工具类 ...

  9. Python不使用int()函数把字符串转换为数字

    Python不使用int()函数把字符串转换为数字 2018年05月21日 14:18:45 边缘ob边缘ob 阅读数:1035 https://blog.csdn.net/qq_33192555/a ...

随机推荐

  1. web专业课学习及往后方向发展

    日常10点起床!!!! web主要是网页设计,目前自我方向是学习web前端开发,熟悉掌握相关的编辑应用已达到能设计出满意的网页,日后继续学习后端等 ,成为全栈工程师.

  2. access纯jdbc连接

    Class.forName("com.hxtt.sql.access.AccessDriver"); String url = "jdbc:Access:///c:/a/ ...

  3. all about

    1.三次握手和四次挥手?2.什么是OSI七层结构?3.http vs https?4.what is Ping?基于什么协议?使用方法?5.DNS?6.cookie vs session?7.LDAP ...

  4. ASP.NET Core 微服务初探[2]:熔断降级之Polly

    当我们从单体架构迁移到微服务模式时,其中一个比较大的变化就是模块(业务,服务等)间的调用方式.在以前,一个业务流程的执行在一个进程中就完成了,但是在微服务模式下可能会分散到2到10个,甚至更多的机器( ...

  5. nodejs常用代码片段

    自动创建目录(多级) 相比起使用递归创建,调用 sheljsl 模块简单得多 const shell = require('shelljs') const fs = require('fs') if ...

  6. MySQL Schema与数据类型的优化

    选择优化的数据类型: 1. 更小的通常更好: 一般情况下,应该尽量使用可以正确存储数据的最小数据类型.更小的数据类型通常更快,因为他们占用更少的磁盘,内存和cpu缓存,并且处理时需要的cpu周期也更少 ...

  7. Android 关于解决MediaButton学习到的media控制流程

    问题背景:话机连接了头戴式的耳机,在通话过程中短按按钮是挂断电话,长按按钮是通话静音.客户需求是把长按改成挂断功能,短按是静音功能. android版本:8.1 在通话中,测试打印信息,可以看到but ...

  8. 13.缓存、三级缓存、内存溢出、AsyncTask

    SharePreference工具类 /** * SharePreference封装 * */ public class PrefUtils { public static final String ...

  9. C++ Opencv Mat类型使用的几个注意事项及自写函数实现Laplace图像锐化

    为了提升自己对Opencv中Mat数据类型的熟悉和掌握程度,自己尝试着写了一下Laplace图像锐化函数,一路坎坷,踩坑不断.现将代码分享如下: #include <opencv2/opencv ...

  10. 微信小程序 - 相对定位和绝对定位 - 相对路径和绝对路径

    微信小程序 - 相对定位和绝对定位 相对定位relative,绝对定位absolute 相对定位:元素是相对自身进行定位,参照物是自己. 绝对定位:元素是相对离它最近的一个父级元素进行定位. 相对定位 ...