设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[其它] 大家来看看我这段代码,我都快疯了。

[复制链接]
11#
发表于 2006-4-10 03:30:00 | 只看该作者
LinkChildFieldsLinkMasterFields 属性:当为这两个属性的设置指定多个字段或控件的名称时,则必须为每一属性设置输入相同数目的字段或控件名称,并在名称之间使用分号 (;) 进行[url=mkMSITStore:C:\Program%20Files\Microsoft%20Office\OFFICE11\2052\vbaac10.chm::/html/acproLinkMasterFields.htm#]分隔[/url]
12#
发表于 2006-4-10 03:34:00 | 只看该作者
不是不能实现,你的方法没有对

在子窗体中手工设置好LinkChildFieldsLinkMasterFields 属性,凡是全部满足条件的记录都会在子窗体中显示.
13#
 楼主| 发表于 2006-4-10 04:19:00 | 只看该作者
程序又改进了,不过没有反映。这次没有错误提示,就是没有效果。把“Me.lianjie”改成“Forms!窗体1.lianjie”也没有反映。

Private Sub 下单日期_Exit(Cancel As Integer)
Me.下单日期.BackColor = RGB(255, 255, 255)
Me.lianjie
Me.精品任务单_子表.Requery
End Sub

Public Function lianjie()
If ((Me.精品任务编号 = "") And (Me.下单日期 = "") And (Me.任务日期 = "")) Then
Me.Form!精品任务单_子表.LinkMasterFields = ""
Me.Form!精品任务单_子表.LinkChildFields = ""
ElseIf ((Me.精品任务编号 <> "") And (Me.下单日期 = "") And (Me.任务日期 = "")) Then
Me.Form!精品任务单_子表.LinkMasterFields = "精品任务编号"
Me.Form!精品任务单_子表.LinkChildFields = "精品任务编号"
ElseIf ((Me.精品任务编号 = "") And (Me.下单日期 <> "") And (Me.任务日期 = "")) Then
Me.Form!精品任务单_子表.LinkMasterFields = "下单日期"
Me.Form!精品任务单_子表.LinkChildFields = "下单日期"
ElseIf ((Me.精品任务编号 = "") And (Me.下单日期 = "") And (Me.任务日期 <> "")) Then
Me.Form!精品任务单_子表.LinkMasterFields = "任务日期"
Me.Form!精品任务单_子表.LinkChildFields = "任务日期"
ElseIf ((Me.精品任务编号 <> "") And (Me.下单日期 <> "") And (Me.任务日期 = "")) Then
Me.Form!精品任务单_子表.LinkMasterFields = "精品任务编号;下单日期"
Me.Form!精品任务单_子表.LinkChildFields = "精品任务编号;下单日期"
ElseIf ((Me.精品任务编号 = "") And (Me.下单日期 <> "") And (Me.任务日期 <> "")) Then
Me.Form!精品任务单_子表.LinkMasterFields = "下单日期;任务日期"
Me.Form!精品任务单_子表.LinkChildFields = "下单日期;任务日期"
ElseIf ((Me.精品任务编号 <> "") And (Me.下单日期 = "") And (Me.任务日期 <> "")) Then
Me.Form!精品任务单_子表.LinkMasterFields = "精品任务编号;任务日期"
Me.Form!精品任务单_子表.LinkChildFields = "精品任务编号;任务日期"
ElseIf ((Me.精品任务编号 <> "") And (Me.下单日期 <> "") And (Me.任务日期 <> "")) Then
Me.Form!精品任务单_子表.LinkMasterFields = "精品任务编号;下单日期;任务日期"
Me.Form!精品任务单_子表.LinkChildFields = "精品任务编号;下单日期;任务日期"
End If
End Function

[此贴子已经被作者于2006-4-9 20:23:56编辑过]

14#
发表于 2006-4-10 04:27:00 | 只看该作者
Private Sub 下单日期_Exit(Cancel As Integer)
Me.下单日期.BackColor = RGB(255, 255, 255)
Me.lianjie
Me.精品任务单_子表.Requery
End Sub

红色部分是什么意思,调用函数?

用call lianjie试试

使用LinkChildFieldsLinkMasterFields 属性,可以不要Me.精品任务单_子表.Requery这句.



[此贴子已经被作者于2006-4-9 20:34:11编辑过]

15#
 楼主| 发表于 2006-4-10 04:33:00 | 只看该作者
call lianjie试了一下,没有反映。我觉得这两个方法没有区别。
16#
 楼主| 发表于 2006-4-10 04:36:00 | 只看该作者
我大概已经发现原因了。因为我修改的数据在退出之后也会自动在刷新(可能会独占),因为我用的是同一张表单,所以刷新的时候可能有点问题。

如果我用另一张表,可能就不会有问题了,我把子“表单”换成“查询”再试一试,完后上报一下。

[此贴子已经被作者于2006-4-9 20:37:33编辑过]

17#
发表于 2006-4-10 04:47:00 | 只看该作者
用这种方法最方便.

在SQL语句的Where子句中设置条件,然后为子窗体的RecordSource 属性赋值

例如:Sub cmboCompanyName_AfterUpdate()
    Dim strNewRecord As String
    strNewRecord = "SELECT * FROM Customers " _
        & " WHERE CustomerID = '" _
        & Me!cmboCompanyName.Value & "'"
    Me.RecordSource = strNewRecord
End Sub
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-1-7 20:18 , Processed in 0.095922 second(s), 29 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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