从一个网站找到了以下代码可以将数字转换成美元。据说是微软写的代码。和大家分享一下。

Function ConvertCurrencyToEnglish(ByVal MyNumber)

Dim Temp

Dim Dollars, Cents

Dim DecimalPlace, Count

ReDim Place(9) As String

Place(2) = " Thousand "

Place(3) = " Million "

Place(4) = " Billion "

Place(5) = " Trillion "

' Convert MyNumber to a string, trimming extra spaces.

MyNumber = Trim(Str(MyNumber))

' Find decimal place.

DecimalPlace = InStr(MyNumber, ".")

' If we find decimal place...

If DecimalPlace > 0 Then

' Convert cents

Temp = Left(Mid(MyNumber, DecimalPlace + 1) & "00", 2)

Cents = ConvertTens(Temp)

' Strip off cents from remainder to convert.

MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))

End If

Count = 1

Do While MyNumber <> ""

' Convert last 3 digits of MyNumber to English dollars.

Temp = ConvertHundreds(Right(MyNumber, 3))

If Temp <> "" Then Dollars = Temp & Place(Count) & Dollars

If Len(MyNumber) > 3 Then

' Remove last 3 converted digits from MyNumber.

MyNumber = Left(MyNumber, Len(MyNumber) - 3)

Else

MyNumber = ""

End If

Count = Count + 1

Loop

' Clean up dollars.

Select Case Dollars

Case ""

Dollars = "No Dollars"

Case "One"

Dollars = "One Dollar"

Case Else

Dollars = Dollars & " Dollars"

End Select

' Clean up cents.

Select Case Cents

Case ""

Cents = " And No Cents"

Case "One"

Cents = " And One Cent"

Case Else

Cents = " And " & Cents & " Cents"

End Select

ConvertCurrencyToEnglish = Dollars & Cents

End Function

Private Function ConvertHundreds(ByVal MyNumber)

Dim Result As String

' Exit if there is nothing to convert.

If Val(MyNumber) = 0 Then Exit Function

' Append leading zeros to number.

MyNumber = Right("000" & MyNumber, 3)

' Do we have a hundreds place digit to convert?

If Left(MyNumber, 1) <> "0" Then

Result = ConvertDigit(Left(MyNumber, 1)) & " Hundred "

End If

' Do we have a tens place digit to convert?

If Mid(MyNumber, 2, 1) <> "0" Then

Result = Result & ConvertTens(Mid(MyNumber, 2))

Else

' If not, then convert the ones place digit.

Result = Result & ConvertDigit(Mid(MyNumber, 3))

End If

ConvertHundreds = Trim(Result)

End Function

Private Function ConvertTens(ByVal MyTens)

Dim Result As String

' Is value between 10 and 19?

If Val(Left(MyTens, 1)) = 1 Then

Select Case Val(MyTens)

Case 10: Result = "Ten"

Case 11: Result = "Eleven"

Case 12: Result = "Twelve"

Case 13: Result = "Thirteen"

Case 14: Result = "Fourteen"

Case 15: Result = "Fifteen"

Case 16: Result = "Sixteen"

Case 17: Result = "Seventeen"

Case 18: Result = "Eighteen"

Case 19: Result = "Nineteen"

Case Else

End Select

Else

' .. otherwise it's between 20 and 99.

Select Case Val(Left(MyTens, 1))

Case 2: Result = "Twenty "

Case 3: Result = "Thirty "

Case 4: Result = "Forty "

Case 5: Result = "Fifty "

Case 6: Result = "Sixty "

Case 7: Result = "Seventy "

Case 8: Result = "Eighty "

Case 9: Result = "Ninety "

Case Else

End Select

' Convert ones place digit.

Result = Result & ConvertDigit(Right(MyTens, 1))

End If

ConvertTens = Result

End Function

Private Function ConvertDigit(ByVal MyDigit)

Select Case Val(MyDigit)

Case 1: ConvertDigit = "One"

Case 2: ConvertDigit = "Two"

Case 3: ConvertDigit = "Three"

Case 4: ConvertDigit = "Four"

Case 5: ConvertDigit = "Five"

Case 6: ConvertDigit = "Six"

Case 7: ConvertDigit = "Seven"

Case 8: ConvertDigit = "Eight"

Case 9: ConvertDigit = "Nine"

Case Else: ConvertDigit = ""

End Select

End Function

java 宏开关美元换加_把数字转变成美元大写的宏相关推荐

  1. JAVA浮点数转人民币读法_算法--java实现将数字转换成人民币大写(迅雷面试题)...

    public classRmb {/*** 人民币的基本信息和操作 * *@authorsoyoungboy *@version1.0*/ private double number; //人民币的数 ...

  2. Java实现将数字转换成中文大写

    /** *程序功能:支持将仟亿数字转换成中文数字表示,如(110.12 转换成壹佰壹拾元壹角贰分) *算法思路:将数字,分成整数部分和小数部分(小数部分四舍五入到两位),分别进行转换,然后将转换后的结 ...

  3. java递归空瓶换饮料_问题描述:一次买n瓶可乐,k个空瓶可以换一瓶饮料,那么一共能喝多少瓶饮料? | 学步园...

    /** *问题描述:一次买n瓶可乐,k个空瓶可以换一瓶饮料,那么一共能喝多少瓶饮料? *下面用不同的方法实现了这个问题(Java实现): *1.递归方法 *2.非递归方法 *3.公式法 */ publ ...

  4. java中的各行换色_隔行变换背景颜色和颜色预警

    需求说明 隔行变换背景颜色:单一背景颜色的报表会让报表浏览者产生眼晕的感觉,通过适当交替的背景色能增加视觉舒适度,也会给页面美工增色不少.此需求是报表展现时最普通最常见的需求. 颜色预警:报表中的某些 ...

  5. java鼠标滑入换图片_超简单---鼠标滑过变换图片

    鼠标滑过,图片变换,非常实用,用JS可以很容易做到,但是JS完成后有个缺陷,在滑过的时候,第一次可能是空白的,然后才显示,因为要下载图片,网速慢的时候更加明显.其实用CSS实现更容易,而且不会出现上面 ...

  6. java对象强转 新增字段_对象属性转成表字段

    这几天在恶补正则表达式,今天刚好遇到一个小需求,大致就对象属性转成数据表字段的名字: 也就是userName ---> user_name,很简单的替换,不会用java的正则表达式,耽误了一会时 ...

  7. java金额转换函数_将阿拉伯数字转换成人民币大写形式的JAVA工具类

    http://wallimn.iteye.com/admin/blogs/365769 public class MoneyUtil { private final static String[] C ...

  8. java 数字转大写_Java把数字转换成中文大写数字

    package com.chen.test; public class TestChinese { public static void main(String[] args) { System.ou ...

  9. python数字形式转换详解_python将数字转换成美元形式

    我正在导入一个csv文件,其中一个价格缺少一个零.在 期望输出:12.10 电流输出:12.1 如何强制数据中包含零?在 到目前为止我所做的:#!/usr/bin/python import csv ...

最新文章

  1. 泛型推断类型不符合上限
  2. 用AI创造可持续发展社会价值,第二届腾讯Light·公益创新挑战赛正式启动
  3. 计算机硬件拆解,计算机硬件系统及主机拆解.ppt
  4. android dpi
  5. java足球游戏毕业设计,java毕业设计_springboot框架的校园足球管理平台
  6. PHP的错误处理机制
  7. RToax / fedora-coreos-config: [sysroot.mount] mount: wrong fs type, bad option, bad superblock on /
  8. java servlet乱码问题_Java编码和servlet乱码问题(1)-Java编码
  9. java log info乱码_跟光磊学Java开发-Java开发常用API的使用
  10. MongoDB:配置与安装
  11. vue3中套用echarts官网例子
  12. 2018蓝桥杯B组国赛第四题 调手表(bfs)
  13. 乐鑫ESP32-S3双核处理器,专为 AIoT 市场打造
  14. 【JZOJ 3397】雨天的尾巴
  15. 开源办公的五个法律问题 ——以“新型冠状病毒”防控期间企业在线远程运营为视角...
  16. 电影点评系统论文java_java电影在线定制影评管理系统
  17. 欧姆龙PLC项目程序NJ系列模切机程序
  18. 对数字签名的攻击概述
  19. SEO做反链不能太刻意,自然合理规律的发布自己的网站
  20. 验证码验证不同步处理方法

热门文章

  1. Wox启动后出现Everything Service或Everything Client 没有运行的解决办法
  2. 《精英的傲慢:好的社会该如何定义成功》笔记与摘录
  3. 计算机原理学习指导第3版,计算机组成原理学习指导与习题解析(第3版)(21世纪大学本科计算机...
  4. S5P6818 芯片手册 System Boot 章节 重排
  5. MS SQL 2016数据库安装部署步骤
  6. 计算机二级c语言vfp,2016计算机二级《VFP》上机操作题及答案
  7. iphone长截图哪个软件好_iPhone手机如何进行长截图?
  8. 系统设计文档包含内容
  9. 【物联网】施密特辞任谷歌母公司董事长!他非常直接地说,互联网将消失!
  10. Python+Selenium自动化测试项目实战【建议收藏】