设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
楼主: boy1
打印 上一主题 下一主题

[模块/函数] 如何拆分列

[复制链接]
11#
发表于 2008-12-13 16:21:30 | 只看该作者
什么意思
12#
 楼主| 发表于 2008-12-14 10:19:43 | 只看该作者

版主请看图示

还有这句是什么意思 CurrentDb.Execute strSQL

[ 本帖最后由 boy1 于 2008-12-14 11:07 编辑 ]

本帖子中包含更多资源

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

x
13#
发表于 2008-12-14 10:28:59 | 只看该作者
1. 应该尽量控制null值,如何改写代码要看你具体要求,和有效性规则。
2. 可以加个局部循环
3. 不用,a代表查询表的名称
4. datediff("d",日期字段名,date())<=10
14#
 楼主| 发表于 2008-12-14 13:07:48 | 只看该作者
原帖由 Henry D. Sy 于 2008-12-14 10:28 发表
1. 应该尽量控制null值,如何改写代码要看你具体要求,和有效性规则。
2. 可以加个局部循环
3. 不用,a代表查询表的名称
4. datediff("d",日期字段名,date())





附上新的实例文件,请麻烦给与修改。谢谢。又麻烦您了。

[ 本帖最后由 boy1 于 2008-12-14 15:30 编辑 ]

本帖子中包含更多资源

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

x
15#
发表于 2008-12-14 16:54:01 | 只看该作者
日期出现错误是因为,原数据有误引起的,你说11月份有31天的吗??
  1. Private Sub Command0_Click()
  2.     Dim rs As New ADODB.Recordset
  3.     Dim rst As New ADODB.Recordset
  4.     Dim dtmArray() As String
  5.     Dim strTemp As String
  6.     Dim I As Integer, J As Integer

  7.     rs.Open "a", CurrentProject.Connection, adOpenKeyset, adLockReadOnly
  8.     rst.Open "b", CurrentProject.Connection, adOpenKeyset, adLockOptimistic

  9.     Do While Not rs.EOF
  10.         If IsNull(rs.Fields(rs.Fields.Count - 1)) Then
  11.             strTemp = "1900-1-1"
  12.         Else
  13.             strTemp = rs.Fields(rs.Fields.Count - 1)
  14.         End If
  15.         dtmArray() = Split(Replace(strTemp, ".", "-"), "/")
  16.         For I = 0 To UBound(dtmArray)
  17.             With rst
  18.                 .AddNew
  19.                 For J = 0 To rs.Fields.Count - 2
  20.                     .Fields(J) = rs.Fields(J)
  21.                 Next
  22.                 .Fields(J) = CDate(dtmArray(I))
  23.                 .Update
  24.             End With
  25.         Next
  26.         rs.MoveNext
  27.     Loop
  28.     rst.Close
  29.     rs.Close
  30.     Set rs = Nothing
  31.     Set rst = Nothing
  32.     Me.b.Requery
  33.     Me.Command1.SetFocus
  34.     Me.Command0.Enabled = False
  35.     Me.签约时间开始.Enabled = True

  36. End Sub
复制代码

[ 本帖最后由 Henry D. Sy 于 2008-12-14 17:17 编辑 ]

本帖子中包含更多资源

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

x
16#
 楼主| 发表于 2008-12-14 17:58:43 | 只看该作者
[:32]不好意思,随意的日期竟然造成麻烦实在对不住啊。

[ 本帖最后由 boy1 于 2008-12-14 18:07 编辑 ]

本帖子中包含更多资源

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

x
17#
发表于 2008-12-14 19:29:25 | 只看该作者
你到底是查询30天以内,或是 30 天以上,或 30天。
18#
 楼主| 发表于 2008-12-14 22:11:08 | 只看该作者

未来30以内,未来10天内等。

[:50] 未来30以内,未来10天内等。

比如:2009年1月15日需交租金,今天是2008年12月14日。我需要提前30天,或10天做提醒。
19#
发表于 2008-12-14 22:24:11 | 只看该作者
Private Sub 签约时间开始_AfterUpdate()
    Dim strWhere As String
    strWhere = "DateDiff('d', Date(), 付款日期)<= " & Me.签约时间开始 & " and DateDiff('d', Date(), 付款日期)>=0"
    Me.b.Form.RecordSource = "select * from b where " & strWhere
End Sub
20#
 楼主| 发表于 2008-12-15 08:45:13 | 只看该作者
[:50] [:50] [:50] [:50] 谢谢版主啊,您辛苦了。版主无私的版主让我非常感动,我会尽我的能力来回馈我们的论坛。也祝我们的论坛越办越好。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-26 17:37 , Processed in 0.087554 second(s), 32 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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