ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: ldy888

[挑战]功能最全、最短(7行)的人民币大写函数

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2009-6-14 21:36 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
编译错误:变量未定义
Function ldy888(M)
y = Int(Round(100 * Abs(M)) / 100)
j = Round(100 * Abs(M) + 0.00001) - y * 100
f = Round((j / 10 - Int(j / 10)) * 10)
A = IIf(y < 1, "", Application.Text(y, "[DBNum2]") & "元")
b = IIf(j > 9.4, Application.Text(Int(j / 10), "[DBNum2]") & "角", IIf(y < 1, "", IIf(f > 0.4, "零", "")))
c = IIf(f < 1, "整", Application.Text(Round(f, 0), "[DBNum2]") & "分")
ldy888 = IIf(Abs(M) < 0.005, "", IIf(M < 0, "负" & A & b & c, A & b & c))
End Function

TA的精华主题

TA的得分主题

发表于 2009-10-28 00:56 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2009-11-18 12:41 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

人民币金额汉字大写单元格转换函数公式一

我从网上收集了一些公式,
大家来这些单元格公式如何改进.

TA的精华主题

TA的得分主题

发表于 2009-11-18 13:15 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

人民币金额汉字大写单元格转换函数公式一

我从网上收集了一些公式,
大家来这些单元格公式如何改进.

人民币金额汉字大写单元格转换函数公式1.rar

187.74 KB, 下载次数: 49

TA的精华主题

TA的得分主题

发表于 2009-11-18 13:17 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

人民币金额汉字大写单元格转换函数公式二

接着上一个帖子.

人民币金额汉字大写单元格转换函数公式2.rar

183.24 KB, 下载次数: 47

TA的精华主题

TA的得分主题

发表于 2010-1-14 11:29 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2010-5-14 16:15 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
偶寫了一個,其中第一行的代碼要加0.0000001以排除 VBA的round函數4舍5入的BUG [   ROUND(0.145,2)=0.14,    汗一個先!]




Function URMB(Sdata)
     
     Number = Abs(Round(Sdata + 0.0000001, 2))
     
     Fen = IIf(Round((Application.WorksheetFunction.Round(Number, 2) - Application.WorksheetFunction.RoundDown(Number, 1)) * 100, 0) = 0, "", Application.WorksheetFunction.Text(Round((Number - Application.WorksheetFunction.RoundDown(Number, 1)) * 100, 0), "[DBNum2]") & "¤&#192;")
     
     Jiao = IIf(Fen = "", IIf(Round((Application.WorksheetFunction.RoundDown(Number, 1) - Int(Number)) * 10, 0) = 0, "", Application.WorksheetFunction.Text(Round((Application.WorksheetFunction.RoundDown(Number, 1) - Int(Number)) * 10, 0), "[DBNum2]") & "¨¤&#190;&#227;"), Application.WorksheetFunction.Text(Round((Application.WorksheetFunction.RoundDown(Number, 1) - Int(Number)) * 10, 0), "[DBNum2]") & "¨¤")
         
     Yuan = IIf(Fen = "" And Jiao = "", Application.WorksheetFunction.Text(Int(Number), "[DBNum2]") & "¤&#184;&#190;&#227;", Application.WorksheetFunction.Text(Int(Number), "[DBNum2]") & "¤&#184;")
   
     URMB = IIf(Sdata < 0, "&#173;t" & Yuan & Jiao & Fen, Yuan & Jiao & Fen)


End Function

TA的精华主题

TA的得分主题

发表于 2010-5-14 16:19 | 显示全部楼层
Sorry,有亂碼添!
轉換一下====>

Function URMB(Sdata)
     
     Number = Abs(Round(Sdata + 0.0000001, 2))
     
     Fen = IIf(Round((Application.WorksheetFunction.Round(Number, 2) - Application.WorksheetFunction.RoundDown(Number, 1)) * 100, 0) = 0, "", Application.WorksheetFunction.Text(Round((Number - Application.WorksheetFunction.RoundDown(Number, 1)) * 100, 0), "[DBNum2]") & "分")
     
     Jiao = IIf(Fen = "", IIf(Round((Application.WorksheetFunction.RoundDown(Number, 1) - Int(Number)) * 10, 0) = 0, "", Application.WorksheetFunction.Text(Round((Application.WorksheetFunction.RoundDown(Number, 1) - Int(Number)) * 10, 0), "[DBNum2]") & "角整"), Application.WorksheetFunction.Text(Round((Application.WorksheetFunction.RoundDown(Number, 1) - Int(Number)) * 10, 0), "[DBNum2]") & "角")
         
     Yuan = IIf(Fen = "" And Jiao = "", Application.WorksheetFunction.Text(Int(Number), "[DBNum2]") & "元整", Application.WorksheetFunction.Text(Int(Number), "[DBNum2]") & "元")
   
     URMB = IIf(Sdata < 0, "负" & Yuan & Jiao & Fen, Yuan & Jiao & Fen)


End Function

TA的精华主题

TA的得分主题

发表于 2010-7-9 07:34 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
原帖由 ldy888 于 2006-1-3 16:48 发表
一直相找一个和表里的IF函数一样功能 的语句,
VBA中的IF用法和表里的不同,看了别人的程序才知道有 IIF语句,和表里的 IF 一样用法。
汗....
[[em06]
[此贴子已经被作者于2006-1-3 16:59:25编辑过]


me too,同汗!!

TA的精华主题

TA的得分主题

发表于 2010-8-7 18:17 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-6-29 06:11 , Processed in 0.038779 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表