设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 2433|回复: 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空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2005-10-12 19:48:00 | 只看该作者
    Dim Power As Integer

    Dim Value As Currency

   

    Value = 123.45

   

    For Power = -Int(-Log(Value) / Log(10#)) - 1 To -2 Step -1

        Debug.Print Int(CCur(Value / 10 ^ Power)) Mod 10

    Next Power





[此贴子已经被作者于2005-10-12 11:49:59编辑过]

3#
 楼主| 发表于 2005-10-12 20:09:00 | 只看该作者
谢谢,请问这段代码应放在哪里?如果方便可不可以在我例子里改改?再次谢过!                                 wuheng敬上
4#
发表于 2005-10-12 20:37: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

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

=GetBit(0)

其中0表示个位,1表示十位,2表示百位,-1表示小数点后第一位,-2表示小数点后第二位……

另外说一句,如果工作中确实需要,学习一些VBA编程是必要的,至少要能够看懂别人写的程序,知道该如何用,在哪里用。

不需要每个窗体和报表模块都复制一段调用函数,只需要在一个模块中复制即可,只要把每个函数的声明改成Public就能在数据库任何一个地方调用。
5#
 楼主| 发表于 2005-10-12 20:44:00 | 只看该作者
多谢谢指教,我这是半路出家的,不过我会努力的,再次谢谢你。我试数据库去了。                        wuheng敬上
6#
 楼主| 发表于 2005-10-12 21:20:00 | 只看该作者
能力不行,我还是整不对呀。请再施援手,谢谢!                                          wuheng敬上
7#
发表于 2005-10-13 01:25:00 | 只看该作者
每个金额位置放一个文本框,把文本框的数据源分别设为   =GetBit(n,[金额]),其中n表示从-2,-1,0.....开始到最高位数,依次从分、角、元...这样排上去。

不过总版主提供的那个函数可以放在通用模块里,也可以放在报表模块里。

[此贴子已经被作者于2005-10-12 17:28:34编辑过]

8#
 楼主| 发表于 2005-10-13 18:15:00 | 只看该作者
谢谢各位,整出来了。                wuheng敬上
9#
发表于 2005-10-13 18:32:00 | 只看该作者
以下是引用sgrshh29在2005-10-12 17:25:00的发言:



每个金额位置放一个文本框,把文本框的数据源分别设为   =GetBit(n,[金额]),其中n表示从-2,-1,0.....开始到最高位数,依次从分、角、元...这样排上去。

不过总版主提供的那个函数可以放在通用模块里,也可以放在报表模块里。





这段函数是可以这样,我建议他放入模块是针对他附件中的那个程序,看起来似乎他引用了他人的一段源码(几个函数),但是同样的代码他在3个窗体模块,2个报表模块中各复制了一份,一来没这个必要,二来这是很不良好的编程习惯。我想可能是因为源码中有一个Private的函数的原因。
10#
 楼主| 发表于 2005-10-13 22:37:00 | 只看该作者
谢谢各位指导,在这里确实帮了我很多忙,学习引用这里的代码和库,提高了我的工作效率.例库里我确是引用了他人的一段源码,可以说如果没有论坛里各位大侠的指点和引用,我是做不出这东东的.有些代码和函数,我看有些时候明白有些时候不知所云.特别是模块这部份,我是更不知所云.所以就想笨的方法,一步一步试,(套).能试得出来最好,不行,就只有请各位大侠帮忙分析解决了.不过我会努力的.再次谢谢各位!!!    wuheng敬上[em01]
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-26 00:26 , Processed in 0.091381 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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