设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[与其它组件] 我学ACCESS1——日期的输入与查找

[复制链接]
跳转到指定楼层
1#
发表于 2004-4-15 07:08:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我是学习ACCESS的新手,挺想学好ACCESS,不懂的地方还请版主和各位朋友多多帮助和点拨。

在这个日期输入与查找中,比如说:
设计日期形式为:2004.01,即yyyy.mm。不知这样的格式该如何输入,我弄了挺久也没有弄出来。

由此而来的查找问题是:比如说我在参数框已设计为:请输入设计日期:
当使用者输入2004.03时,就会把2004年月份的所有内容显示出来。

大伙能教教我吗?在此先道声谢谢了。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2004-4-15 07:49:00 | 只看该作者
这种日期格式我还真没用过,为什么非要这样用呢
3#
 楼主| 发表于 2004-4-16 08:12:00 | 只看该作者


你看嘛,就是这个样子。在设计日期中,我不想让它显示为2003。11。1之类的,我只想让它显示为2003.11。这是模具的设计日期,只需要年月就行了。


然后在查找中,当提示框为:请输入设计日期。使用者输入2003。11,就可把该年该月的所有模具显示出来。

[此贴子已经被作者于2004-4-16 0:12:52编辑过]

本帖子中包含更多资源

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

x
4#
发表于 2004-4-16 08:40:00 | 只看该作者
要看字段的存储类型
如果是日期类型,那么不管你显示的格式是yyyy-mm-dd还是yyyy-mm-dd,它存储的都是yyyy-mm-dd

这是如果要查找固顶月份的记录,可以使用如下条件子句
WHERE Format([设计日期],"yyyy-mm")="2003-11"

如果天对你确实没有什么用处,也可以考虑日期字段用文本类型,写入时先做格式化
5#
 楼主| 发表于 2004-4-17 06:13:00 | 只看该作者

我想知道,你们所说的FORMAT语句,一般是放在下图中的哪个位置呢?
原谅我是新手,我以为FORMAT必须放在SQL或VB语言中吗?可这二者我都不会。:(

本帖子中包含更多资源

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

x
6#
发表于 2004-4-17 06:37:00 | 只看该作者

本帖子中包含更多资源

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

x
7#
发表于 2004-4-17 06:41:00 | 只看该作者
1、如果你要实现2004.02这样格式的输入,那么你要考虑把字段的属性设为“文本”。
2、Format()函数,可以在“默认值”里面输入,也可以在VB里使用,也就是说,只要是能让你输入代码的地方,应该就可以用这个函数。(在查询里也可以用代码的,还有很多地方,慢慢你就会知道的。)
8#
 楼主| 发表于 2004-4-17 16:46:00 | 只看该作者

我还想问问


我还想问问,我照sea.er的提示在格式处输入:yyyy.mm,即我不想用“-”作为日期分隔符,当回车后显示如下图:



表中的显示还是不符我们的要求。


还有,我希望我输入2004.4时,表中就自动显示为:2004.04,能继续帮助我吗?

本帖子中包含更多资源

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

x
9#
发表于 2004-4-17 18:43:00 | 只看该作者
....你这样已经实现了日期的最后格式为:2004.04
    但是你的字段如果是日期型的,那么你输入的时候,中间的间隔符号一定要用“-”,例:2004-4,还有因为你在格式里设置了“yyyy\.mm",所以你刚才输入的内容(2004-4)就会转换为:2004.04
    没有办法的,输入日期型的数据,中间的间隔符号一定要用“-”,如果你真的想实现你那种效果,只有在窗体中进行设计。
    1、“日期”字段的属性改为“文本”。
    2、在“日期字段文本框”(窗体设计里的)的“更新后事件”中输入如下代码:

Private Sub 日期_AfterUpdate()
    Dim A, B, C, D
    A = Left(Me.日期, 4)
    B = Right(Me.日期, 2)
    C = Left(B, 1)
    If C = "." Then
    C = "0"
    Else: C = C
    End If
    D = Right(B, 1)
    Me.日期 = A & "." & C & D
End Sub

    这样你在窗体里输入2004.4就会变成2004.04,输入2004.11也会是2004.11。好了,祝你Learn Access愉快!
10#
 楼主| 发表于 2004-4-17 19:20:00 | 只看该作者
我好傻啊,我先前都差点要摸到成功的鼻子了,结果推迟到现在才终于摸到,哈~~~~~

原来如此。

我先前将格式设为yyyy.mm时,字段的属性却是文本型的,所以我输入时,如果为2004.4,则显示依然为2004.4,而不是2004.04。

经Ajoe朋友的提醒,我将字段属性改为日期/时间型,一切如愿以偿。

引用Ajoe朋友的话:但是你的字段如果是日期型的,那么你输入的时候,中间的间隔符号一定要用“-”,例:2004-4……

我在输入时间隔符依然为小数点“.",即输入时为2004.4,在显示时仍然为2004.04,嘻嘻。

在此向Ajoe朋友和sea.er版主的帮助表示真心的感谢,虽然摸着成功的鼻子迟了点,但总算摸到了,那一刻,心情真好,同时也祝大家:Learn  Access愉快!

:)




[此贴子已经被作者于2004-4-17 11:24:01编辑过]

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

本版积分规则

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

GMT+8, 2024-9-20 22:31 , Processed in 0.107444 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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