Access编程交流网
  • 设为首页|收藏本站|繁体中文|手机版
  •     
  • Access培训-Access开发平台-Access行业开发

  • 首页
  • 资讯
  • 技巧
  • 源码
  • 行业
  • 资源
  • 活动
  • 关于

技巧

ACCESS数据库

启动/设置/选项/背景

修复/压缩

安全/加密/解密

快捷键

版本升级/其它等

数据表

命名方式/设计规范

表设计

查询

Sql语言基础

选择查询

更新查询

删除查询

追加查询

生成表查询

交叉表查询

SQL特定查询

查询参数

查询综合应用

界面/窗体/控件

标签

文本框

命令按钮

组合框/列表框

选项组/复选框/选项按钮

选项卡

子窗体

窗体本身/综合应用

其它

报表打印

报表设计

高级报表

模块/函数/VBA/API/系统

VBA基础

内置函数

调试/跟踪/Debug

模块/类模块

API/COM/系统相关

字符数字日期

网络通信游戏

加密解密安全

文件处理

经典算法

宏/菜单/工具栏/功能区

宏/脚本

菜单/工具栏

功能区/Ribbon

图表/图形/图像/多媒体

图表

图形/图像

音频

视频/动画

DAO/链接表/ADO/ADP

DAO/链接表/ODBC

ADO/RDO

ADP

ActiveX/第三方控件/插件

Treeview树控件

ListView列表控件

Toolbar工具栏控件

微软其它控件

Dbi-Tech

CodeJock

Grid++Report

FastReport

ComponentOne

加载项/插件/Addin

OFFICE集成/导入导出/交互

Excel导入导出/交互

Word导入导出/交互

PPT交互

Outlook控制/邮件

Text文本文件/INI/CSV

PDF/SWF/XML格式

CAD格式

Sharepoint/其它Office

SqlServer/其它数据库

表

视图

存储过程/触发器

函数

用户/权限/安全

调试/维护

SqlServer其它/综合

发布/打包/文档/帮助

开发版/运行时

打包/发布/部署

开发文档/帮助制作

Access完整行业系统

采购管理系统

销售管理系统

仓库管理系统

人力资源管理HRM

CRM管理系统

MRP/ERP管理系统

BRP/流程优化

其它管理系统

心得/经验/绝招
其它/杂项
Excel技巧

Excel应用与操作

Excel开发编程

Word技巧

Word应用与操作

Word开发编程

Outlook技巧

Outlook应用与操作

Outlook开发编程

热门文章

  • 根据不同的SQL语句获取记..
  • 月初,月末,本月天数的函数
  • Access窗体间变量的传..
  • 取得电脑CPU的名称及速度
  • 了解access中的相除(..
  • Function与Sub的..

最新文章

  • Access或VB VBA..
  • 关于VBA的0、""(空字..
  • Access导出函数Out..
  • Access日期与日期区间..
  • RecordSource ..
  • Access子窗体事件控制..

联系方式

Access交流网(免费Access交流)

QQ:18449932 

网  址:www.access-cn.com

当前位置:首页 > 技巧 > 模块/函数/VBA/API/系统 > VBA基础
VBA基础

将金额数字转换汉字大写

作    者:yuab  
摘    要:将金额数字转换汉字大写的VBA程序

正    文:

调用方法如图:

按此在新窗口浏览图片

Public Function AAA(number As Variant) As String
   If (IsNull(number)) Then
      AAA = "错误:传入负值或Null值"
   Else
      Select Case number
         Case 0: AAA = "零"
         Case 1: AAA = "壹"
         Case 2: AAA = "贰"
         Case 3: AAA = "叁"
         Case 4: AAA = "肆"
         Case 5: AAA = "伍"
         Case 6: AAA = "陆"
         Case 7: AAA = "柒"
         Case 8: AAA = "捌"
         Case 9: AAA = "玖"
         Case 10 ^ 1: AAA = "分"
         Case 10 ^ 2: AAA = "角"
         Case 10 ^ 3: AAA = "元"
         Case 10 ^ 4, 10 ^ 8, 10 ^ 12: AAA = "拾"
         Case 10 ^ 5, 10 ^ 9, 10 ^ 13: AAA = "佰"
         Case 10 ^ 6, 10 ^ 10, 10 ^ 14: AAA = "仟"
         Case 10 ^ 7: AAA = "萬"
         Case 10 ^ 11: AAA = "亿"
      End Select
   End If
End Function

Public Function abc(number As Variant, canshu As Long) As String
   Dim C, D, Y, X, Z As String
   Dim A, b, k

   A = Int(number * 100 + 0.5)
   b = Len(CStr(A))
   D = CStr(A)
   If (b > 14) Then MsgBox "数字过大无法转换": Exit Function
   If (number < 0) Then MsgBox "错误:不可传入负值": Exit Function
   If A = 0 Then abc = "": Exit Function
   For k = 1 To b
      Select Case canshu
         Case 1
            Y = AAA(Mid(D, b - k + 1, 1)) + AAA(10 ^ k)
            Select Case k
               Case 1
                  If Mid(D, b, 1) = "0" Then C = "整" Else C = Y + C
               Case 2, 4, 5, 6, 8, 9, 10, 12, 13, 14
                  If Mid(D, b - k + 1, 2) = "00" Then C = C _
                  Else: _
                  If Mid(D, b - k + 1, 1) = "0" And Mid(D, b - k + 2, 1) <> "0" Then _
                  C = "零" + C Else: C = Y + C
               Case 7
                  If b >= 11 Then
                     If Mid(D, b - k - 2, 4) = "0000" Then
                        C = C
                     Else
                        If Mid(D, b - k + 1, 1) = "0" And Mid(D, b - k + 2, 1) = "0" _
                        Then C = AAA(10 ^ k) + C _
                        Else: If Mid(D, b - k + 1, 1) = "0" And Mid(D, b - k + 2, 1) <> "0" _
                        Then C = AAA(10 ^ k) + "零" + C Else: C = Y + C
                     End If
                  Else
                     If Mid(D, b - k + 1, 1) = "0" And Mid(D, b - k + 2, 1) = "0" _
                     Then C = AAA(10 ^ k) + C _
                     Else: If Mid(D, b - k + 1, 1) = "0" And Mid(D, b - k + 2, 1) <> "0" _
                     Then C = AAA(10 ^ k) + "零" + C Else: C = Y + C
                  End If
               Case 3, 11
                  If Mid(D, b - k + 1, 1) = "0" And Mid(D, b - k + 2, 1) = "0" _
                  Then C = AAA(10 ^ k) + C _
                  Else: If Mid(D, b - k + 1, 1) = "0" And Mid(D, b - k + 2, 1) <> "0" _
                  Then C = AAA(10 ^ k) + "零" + C Else: C = Y + C
            End Select
         Case 2
            C = AAA(Mid(D, b - k + 1, 1)) + " " + C
         Case 3
            C = AAA(Mid(D, b - k + 1, 1)) + AAA(10 ^ k) + C
      End Select
   Next
   abc = C
End Function


access数据库 点击浏览该文件


来 源 于:ACCESS中国

发布人:yuab-Access中国  
分享到:
点击次数:  更新时间:2004-11-23 22:48:53  【打印此页】  【关闭】
上一条:如何取得WINDOWS和ACCESS的安装目录  下一条:将15的身份证号升码为18位的函数



相关文章

  • • Access或VB VBA判断数组的值是否为空的几种方法
  • • 关于VBA的0、""(空字符串)、Null、Empty、与 Nothing 的区别
  • • Access导出函数OutPutto解释
  • • Access日期与日期区间的筛选
  • • RecordSource SourceObject ControlSource属性的区别
  • • Access子窗体事件控制父窗体
  • • 事件​change和AfterUpdate的区别
  • • 代码修改完善方法示例(初学者必读)

热门文章

  • [2017-01-13] 添加自动编号字段及主键access数据库
  • [2009-05-25] VB程序设计的常用算法(转载)access数据库
  • [2004-11-23] 关闭所有打开的Access对象access数据库
  • [2017-12-04] Access或VB VBA判断数组的值是否为空的几种方法access数据库
  • [2017-01-09] Access排序之冒泡法access数据库
  • [2017-05-24] Access 中IIF Switch Choose 3个函数的区别和使用方法access数据库

热门产品

公司动态|在线留言|在线反馈|友情链接|会员中心|站内搜索|网站地图

中山市天鸣科技发展有限公司 版权所有 1999-2023 粤ICP备10043721号

QQ:18449932

Access应用 Access培训 Access开发 Access平台

access|数据库|access下载|access教程|access视频|access软件

Powered by MetInfo 5.3.12 ©2008-2025  www.metinfo.cn