设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[Access本身] 求助超难问题:怎么在ACCESS里设置数字格式为分数显示?

[复制链接]
跳转到指定楼层
1#
发表于 2005-7-11 16:33:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
求助超难问题:怎么在ACCESS里设置数字格式为分数显示?



由于,在实际使用中,在使用到以英寸为单位时,就不得不必须用分数的格式

在EXCEL里很好实现,为什么在ACCESS就不支持了呢?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2005-7-11 16:39:00 | 只看该作者
引用别的高手的话:

如何在ACCSSE中存储和显示有公差、有分数、有角度或平方的记录?请问高手

这是一个如何在ACCSSE中存储和显示一些其他非常规得符号的问题

  我在用ACCESS连接SQL建一个加工工艺管理网络系统,其中有些公差、分数、角度,平方等难以存储

  我暂时用的办法是:

     在OLE型字段中加入EXEL或WORD对象,

     虽然能够完成任务,可是碰到那些连WORD和EXEL,都不太熟悉的白痴机械工程师还得教他们使用“文本框”(真衰),同时也不太方便。

     请问高手,有没有更好的办法

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

在报表和窗体中如何让数字字段的小数显示成分数的格式,如:0.2显示成1/5。

=====================================================

可以这样来解决啊: 我用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位的小数


==========================================

#################################################################

我要的问题是这样的,不像他那样把 0.5 转化成 1/2

而是在输入框里直接输入 35 1/2,

比如:有这么一个表,有三个字段,



<TABLE  cellSpacing=0 cellPadding=0 width=216 border=0 x:str>

<COLGROUP>

<COL style="WIDTH: 54pt" span=3 width=72>






     长



      高



21 1/4

25 1/3

35



22 1/4

26 1/3

35



23 1/4

27 1/3

35



24 1/4

28 1/3

35



25 1/4

29 1/3

35

<TR  height=19>

26 1/4

<TD class=xl22  align=right x:num="30.3333333333333"><FONT face=宋体 color=#11
3#
发表于 2005-7-11 16:57:00 | 只看该作者
你是查询中,还是。。。
4#
 楼主| 发表于 2005-7-11 17:05:00 | 只看该作者
现在只能处理不超过6位的小数



[ Last edited by secowu on 2005-7-11 at 09:13 ]



<BLOCKQUOTE>附件 1: 2185.JPG (2005-7-11 09:12, 12.16 K)



上面代码,通不了。我是在问呀:我要的问题是这样的,不像他那样把 0.5 转化成 1/2而是在输入框里直接输入 35 1/2,比如:有这么一个表,有三个字段,<TABLE cellSpacing=0 cellPadding=0 width=216 border=0 x:str><COLGROUP><COL style="WIDTH: 54pt" span=3 width=72>     长       高21 1/425 1/33522 1/426 1/33523 1/427 1/33524 1/428 1/33525 1/429 1/33526 1/430 1/33527 1/431 1/33528 1/432 1/33529 1/433 1/335<TR height=19>30 1/4<TD class=xl22  align=right x:num="34.3333333333333"><FONT face=宋体 color=#1111
5#
发表于 2005-7-11 18:04:00 | 只看该作者


在窗体时,试试

本帖子中包含更多资源

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

x
6#
 楼主| 发表于 2005-7-11 22:27:00 | 只看该作者
非常感谢,但是将窗体改成连续窗体时,然后输入数据长、宽、高那个体积,不会自动算出来呢。就是说,体积这一字段不需要在表里面体现出来而是通过动态自动得出的。我试着去删除了您提供的表里的那个“体积”字段然后在窗体里,把体积改成“=长*宽*高”结果就出现错误了。
7#
发表于 2005-7-11 23:03:00 | 只看该作者


本帖子中包含更多资源

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

x
8#
 楼主| 发表于 2005-7-12 16:43:00 | 只看该作者
=IIf(IsNull([txt长]) And IsNull([txt宽]) And IsNull([txt高]),"",Eval(Replace([txt长]," ","+"))*Eval(Replace([txt宽]," ","+"))*[txt高])哦。原来关键在这、这下行了。解决了ACCESS不能用分数进行计算的问题,厉害非常感谢!!!!!!
9#
 楼主| 发表于 2005-8-19 22:52:00 | 只看该作者
俺要把上面两个做成模块来调用搞不定比如:

长1=47 3/4

那么长2就自动得出为:47 1/2
10#
 楼主| 发表于 2005-8-19 22:55:00 | 只看该作者
然后宽1=43 6/7体积自动等于长1*宽1
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-30 11:44 , Processed in 0.104859 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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