设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 3251|回复: 2
打印 上一主题 下一主题

请教:关于小数转换成分数[求助]

[复制链接]
跳转到指定楼层
1#
发表于 2003-4-4 07:12:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在报表和窗体中如何让数字字段的小数显示成分数的格式,如:0.2显示成1/5。che1188@sohu.com[em11]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2003-5-12 20:13:00 | 只看该作者
可以这样来解决啊: 我用VB做的,你可以参考一下
你应该知道怎么样把0.2转化成 2/10吧,这样不就好办了,求出分子和分母的最大公约数,然后进行除法不就可以了。程序如下:
Private Sub Form_Load()
Text1.Text = ""
Text2.Text = ""
End Sub

Private Sub Text1_Change()
Dim m As Integer
Dim n As Integer
Dim x As Integer
Dim y As Integer

If Text1.Text = "" Then
Exit Sub
End If

If Len(Text1.Text) < 3 Then
Exit Sub
End If

m = Val(10 ^ (Len(Text1.Text) - 2))
n = Val(Right(Text1.Text, Len(Text1.Text) - 2))
x = m
y = n

If y = 0 Then
Text2.Text = "0"
Exit Sub
End If

Do
z = x Mod y
x = y
y = z
Loop While z <> 0
Text2.Text = Str(n / x) & "/" & Str(m / x)
End Sub


现在只能处理不超过6位的小数
3#
发表于 2005-8-19 01:51:00 | 只看该作者
建议高手将它做成模块来用
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-29 03:15 , Processed in 0.074425 second(s), 26 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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