设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 2393|回复: 19
打印 上一主题 下一主题

[其它] [求助] 关于货币金额逐位显示的问题

[复制链接]
跳转到指定楼层
1#
发表于 2005-10-12 19:04:00 | 只看该作者 回帖奖励 |正序浏览 |阅读模式


各位大侠:

如何才能把数字分开放入个、十、百、千、、、格子中。

如123.45分别放在百为1,十为2,元为3,角为4,分为5。

请赐教!谢谢!

                                                                             wuheng敬上





[此贴子已经被LucasLynn于2005-10-12 11:51:22编辑过]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
20#
发表于 2005-10-27 22:44:00 | 只看该作者
以下是引用ey1001在2005-10-21 9:23:00的发言:

LucasLynn,

你好,你的程序都觉得很独特。下面转换用通俗的说法其目的是什么呀

-Int(-Log(Value) / Log(10#)) - 1      

Int(CCur(Value / 10 ^ BitNo)) Mod 10



上面一行是获得小数点前的位数,以确定从哪一位开始返回数据,之前的就显示为空(否则会显示0),因为VBA中没有Log10函数,所以只能LogN/Log10,这是基本的对数计算公式。

下面一行是取单个位的数字。

[此贴子已经被作者于2005-10-27 14:45:03编辑过]

19#
发表于 2005-10-27 22:42:00 | 只看该作者
以下是引用hzdzykf在2005-10-25 19:41:00的发言:













在你的程序中插入一个模块,模块代码如下:

Public Function GetBit(BitNo As Integer, Value As Currency) As String

    If BitNo <= -Int(-Log(Value) / Log(10#)) - 1 Then GetBit = Int(CCur(Value / 10 ^ BitNo)) Mod 10

End Function

在窗体上每个数字位置放一个文本框,数据源设定为:

这个好像不行,当金额=98765432.13时,getbit(-2,金额)就会溢出,不知是什么原因?



原因就是数额太大了,编写的时候没考虑你要开这么大额的发票。[em07]
18#
发表于 2005-10-27 15:56:00 | 只看该作者
是大写数额吗???
17#
发表于 2005-10-26 03:56:00 | 只看该作者
当金额=98765432.13时,GETBIT(-2,金额)就会溢出
16#
发表于 2005-10-26 03:41:00 | 只看该作者


在你的程序中插入一个模块,模块代码如下:
Public Function GetBit(BitNo As Integer, Value As Currency) As String

    If BitNo <= -Int(-Log(Value) / Log(10#)) - 1 Then GetBit = Int(CCur(Value / 10 ^ BitNo)) Mod 10

End Function
在窗体上每个数字位置放一个文本框,数据源设定为:这个好像不行,当金额=98765432.13时,getbit(-2,金额)就会溢出,不知是什么原因?
15#
发表于 2005-10-21 17:23:00 | 只看该作者
LucasLynn,你好,你的程序都觉得很独特。下面转换用通俗的说法其目的是什么呀 -Int(-Log(Value) / Log(10#)) - 1       Int(CCur(Value / 10 ^ BitNo)) Mod 10

14#
 楼主| 发表于 2005-10-15 23:17:00 | 只看该作者
  LucasLynn你太伟大了!!!感谢!!感谢!!                                             wuheng敬上[em17][em17]
13#
发表于 2005-10-15 22:49:00 | 只看该作者
我怎么看不懂呢,但我还想在此提一问:“我也复制一段函数,但打印时在人民币符号前显0,怎么才能消除。”谢谢。
12#
发表于 2005-10-15 22:23:00 | 只看该作者
以下是引用wuheng在2005-10-15 12:22:00的发言:

接下来的问题:

   想在金额栏那里随机加上人民币符号,如百位有数字,则在千位栏加¥,如千位有数字则在万位栏加,类推。要怎么做才能实现??请指教!

                    谢谢!!

                                                wuheng敬上

                     



Public Function GetBit(BitNo As Integer, Value As Currency) As String

    If BitNo <= -Int(-Log(Value) / Log(10#)) - 1 Then GetBit = Int(CCur(Value / 10 ^ BitNo)) Mod 10

    If BitNo = -Int(-Log(Value) / Log(10#))  Then GetBit = "¥"

End Function

[此贴子已经被作者于2005-10-15 14:23:40编辑过]

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-9-22 03:51 , Processed in 0.094161 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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