Office中国论坛/Access中国论坛

标题: 查询时 跳出对象不支持该属性或方法 (头都大了) [打印本页]

作者: 转体118    时间: 2011-10-9 13:44
标题: 查询时 跳出对象不支持该属性或方法 (头都大了)
{:soso_e127:}
Private Sub 查询_Click()
On Error GoTo Err_查询_Click
Dim strWhere As String  
strWhere = ""  
If Not IsNull(Me.产品型号) Then
strWhere = strWhere & "([产品型号] like '*" & Me.产品型号 & "*') AND "
End If
If Not IsNull(Me.产品类别) Then
strWhere = strWhere & "([产品类别] like '" & Me.产品类别 & "') AND "
End If
If Not IsNull(Me.员工ID) Then
strWhere = strWhere & "([员工ID] like '*" & Me.员工ID & "*') AND "
End If
If Not IsNull(Me.名称) Then
trWhere = strWhere & "([名称] like '" & Me.名称 & "') AND "
End If
If Not IsNull(Me.电话号码) Then
'有输入
strWhere = strWhere & "([电话号码 like '" & Me.电话号码 & "') AND "
End If
If Not IsNull(Me.销售合同号) Then
strWhere = strWhere & "([销售合同号] like '" & Me.销售合同号 & "') AND "
End If
If Not IsNull(Me.进货合同号) Then
strWhere = strWhere & "([进货合同号] like '" & Me.进货合同号 & "') AND "
End If
If Not IsNull(Me.开始日期) Then
strWhere = strWhere & "([销售日期] >= #" & Format(Me.开始日期, "yyyy-mm-dd") & "#) AND "
End If
If Not IsNull(Me.结束日期) Then
strWhere = strWhere & "([销售日期] <= #" & Format(Me.结束日期, "yyyy-mm-dd") & "#) AND "
End If
If Len(strWhere) > 0 Then
strWhere = Left(strWhere, Len(strWhere) - 5)
End If

Me.销售查询子窗体.Form.Filter = strWhere
Me.销售查询子窗体.Form.FilterOn = True


Exit_查询_Click:
    Exit Sub

Err_查询_Click:
    MsgBox Err.Description
    Resume Exit_查询_Click
   
End Sub

作者: 转体118    时间: 2011-10-9 13:44
大大们,看看啊,在线等,急用啊
作者: Henry D. Sy    时间: 2011-10-9 13:48
传例子
作者: 转体118    时间: 2011-10-9 13:53
没权限啊
作者: 转体118    时间: 2011-10-9 13:53
{:soso_e126:}
作者: Henry D. Sy    时间: 2011-10-9 14:01
什么意思?
作者: 转体118    时间: 2011-10-9 14:06
这么传例子?
作者: 转体118    时间: 2011-10-9 14:07
新手,不好意思啊
作者: 转体118    时间: 2011-10-9 14:15
没人可以回答吗?
作者: Henry D. Sy    时间: 2011-10-9 14:53
转体118 发表于 2011-10-9 14:15
没人可以回答吗?

回复里有个附件,你点击他就可以上传附件!
没有附件看不出问题的,
作者: tzh16000    时间: 2011-10-9 15:24
If Not IsNull(Me.开始日期) Then
strWhere = strWhere & "([销售日期] >= #" & Format(Me.开始日期, "yyyy-mm-dd") & "#) AND "
End If
If Not IsNull(Me.结束日期) Then
strWhere = strWhere & "([销售日期] <= #" & Format(Me.结束日期, "yyyy-mm-dd") & "#) AND "
=======
问题出在这吧?,[开始日期][结束日期]FORMAT的后与[销售日期]数据类型匹配么?如果[销售日期]本身是DATE数据类型,不需要FORMAT
作者: 转体118    时间: 2011-10-9 16:06
还是同样的问题
作者: 转体118    时间: 2011-10-9 16:09
[attach]46880[/attach]
作者: 转体118    时间: 2011-10-9 16:09
大大们,看看
作者: 转体118    时间: 2011-10-9 16:10
问一下,子窗体数据更新怎么弄啊
作者: tzh16000    时间: 2011-10-9 16:21
附件打不开...
换成更改数据源试试呢?

作者: Henry D. Sy    时间: 2011-10-9 16:26
另存为2003版本,再传上来
作者: 转体118    时间: 2011-10-9 16:27
2010的打不开?
作者: yanghua1900363    时间: 2011-10-9 16:39
你用的版本高 2007的都打不开
作者: 转体118    时间: 2011-10-9 16:40
那怎么办,转换不了低版本啊
作者: yanghua1900363    时间: 2011-10-9 16:47
使用开始菜单中的“另存为”就可以选择版次了
作者: 转体118    时间: 2011-10-9 16:58
没有其它版次啊
作者: yanghua1900363    时间: 2011-10-10 10:23
确实很郁闷  ACCESS2010没有提供向前兼容的功能
作者: 转体118    时间: 2011-10-10 12:07
{:soso_e153:}
作者: tzh16000    时间: 2011-10-10 12:38
转体118 发表于 2011-10-9 16:06
还是同样的问题

If Not IsNull(Me.开始日期) Then
strWhere = strWhere & "([销售日期] >= #" & Format(Me.开始日期, "yyyy-mm-dd") & "#) AND "
End If
If Not IsNull(Me.结束日期) Then
strWhere = strWhere & "([销售日期] <= #" & Format(Me.结束日期, "yyyy-mm-dd") & "#) AND "
=========
如果[销售日期]是DATE型,把这一段改成
If Not IsNull(Me.开始日期) Then
strWhere = strWhere & "([销售日期] >= #" & Me.开始日期 & "#) AND "
End If
If Not IsNull(Me.结束日期) Then
strWhere = strWhere & "([销售日期] <= #" & Me.结束日期 & "#) AND "
同时把窗体上的开始日期\结束日期控件属性格式也改成与[销售日期]一样的日期格式试试看
作者: Henry D. Sy    时间: 2011-10-10 12:50
控件的属性或者方法使用错误!
跟这些查询语句应该无关,没有例子大家只能猜!
作者: 转体118    时间: 2011-10-11 10:08
我也猜{:soso_e118:}
作者: 转体118    时间: 2011-10-11 10:35
刚试过更改日期的参数了,控件的属性都保持默认了,还是出现同样的问题。
作者: Henry D. Sy    时间: 2011-10-11 10:59
转体118 发表于 2011-10-11 10:35
刚试过更改日期的参数了,控件的属性都保持默认了,还是出现同样的问题。

默认是在属性窗口里设定的。
而您的情况分明是在代码里用错了,方法或属性!
作者: 转体118    时间: 2011-10-11 11:03
是控件方面的错误,我将主窗体上面的控件全部用表生成,然后去掉绑定,就可以了{:soso_e113:}
绕了个大弯啊,又回来了




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3