Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

窗体查询无法运行

Lee  发表于:2010-05-28 18:47:04  
复制

我设置了一个窗体查询,条件和代码都设置好了,但VB代码好象有点问题,请帮忙指点一下。点击下载此附件

 

Top
wang decheng 发表于:2010-05-28 21:37:17
Lee 发表于:2010-05-29 00:04:36
Wang先生谢谢你的帮忙,我对照你的回复对按钮代码进行了修改,并删除了子窗体数据源中多余字段,但是我打开查询窗体后还是不能显示子窗体的入库数据表,恕我愚昧,我对子窗体的属性设置还是不能发现问题所在,麻烦再指点一下。

wang decheng 发表于:2010-05-29 11:25:49

你把子窗体的数据源设定错了

放入子窗体时直接把查询放入即可



Lee 发表于:2010-05-29 21:36:32

我自己搞了一通,子窗体能显示了,但只显示“五金半成品”类别的,而且查询不能运行,清除又显示代码有问题,唉还是不得要领,wang先生能说一下子窗体是如何设置的吗?我属性中记录源是“入库查询”啊?



wang decheng 发表于:2010-05-29 22:26:08

能不能把你改进以后的文件发上来?我看看到底什么问题。



Lee 发表于:2010-05-29 22:42:54
谢谢,我把文件修改再上传。点击下载此附件

access爱好者 发表于:2010-05-30 09:10:45
代码和表达式中控件名称不正确。点击下载此附件

Lee 发表于:2010-05-30 18:03:27

我把代码进行了修改(复制过去的应不会错吧)后,清除按钮操作没问题了,但查询问题还没解决:

1.除“产品编号”和“PO”外,其余查询结果都不对。

2.最关键的是我打开查询窗体,子窗体中依然只显示“五金半成品”类别的产品,我想子窗体的设置有问题,而这问题我一直没弄懂,我应怎样设置(修改)子窗体属性呢?

3.我还想请教一下,代码中“入库查询_子窗体”和“[入库查询 子窗体]表达的意思一样吗?因我对VB真的不怎在行。

有劳指教。



蒋元根 发表于:2010-05-30 20:07:31

建议学习一下<<常用查询窗体刘小军>>的方法.我已经按刘小军的方法修改了一下,供参考

点击下载此附件

Lee 发表于:2010-05-30 22:23:10
刘小军先生的这篇文章我拜读过,我也正是根据刘先生的这篇文章设计窗体查询的,问题是我不知道子窗体在哪里出了问题,与上传回复比较我看不出来,麻烦各位能明示一下,一来我想多学点东西,二来那毕竟只是Sample,我不明所以是无法用在真正的数据库上的。

蒋元根 发表于:2010-05-31 06:19:57
Lee 发表于:2010-05-31 20:34:47
蒋先生上传的资料好象错了,是之前未修改前我的文件。

蒋元根 发表于:2010-05-31 22:15:14
你好!我重新下来看了,没有错,建议你遇事不要着急,慢慢来,将自己做的数据库和别人的按表,查询,窗体一点一点对比,看窗体时要看数据的来源和代码,你再看看,有没有错?供参考

Lee 发表于:2010-06-01 10:46:32

谢谢蒋先生耐心指导,因我对VB不熟悉,我要慢慢消化一下。

wj



Lee 发表于:2010-06-01 10:52:53
但我始终不明白的是为什么别人修改我的上传文件后,查询窗体能打开后能正常显示子查询内容,我自己怎么弄,要不打开查询窗体后不能显示入库子窗体,要不入库子窗体只显示“五金半成品”一个类别。究竟回复的几位朋友除修改了我上传文件的代码外,有没有修改其它地方,我真的比较不出来,而对此始终没有一位朋友明示我。

蒋元根 发表于:2010-06-01 11:22:45

你好!我给看了一下:你的问题出在窗体<<入库查询>>上面的组合框和文本框的名称上,一个有6个,你错了4个:


产品编号名称是产品编号
类别 名称是Combo23
用途 名称是Combo25
PO 名称是PO
进仓日期开始名称是Text16
进仓日期截止名称是Text18

 

你的查询要求:

SELECT 入库.产品编号, 入库.进仓日期, 入库.PO, 入库.进仓数

量, 产品资料.类别, 产品资料.用途
FROM 产品资料 INNER JOIN 入库 ON 产品资料.产品编号 = 入库

.产品编号
WHERE (((入库.产品编号) Like IIf(IsNull([Forms]![入库查询

]![产品编号]),'*','*' & [Forms]![入库查询]![产品编号] &

'*')) AND ((入库.进仓日期) Between (IIf(IsNull([Forms]![

入库查询]![进仓日期开始]),#1/1/2005#,[Forms]![入库查询]![

进仓日期开始])) And (IIf(IsNull([Forms]![入库查询]![进仓

日期截止]),#12/31/2099#,[Forms]![入库查询]![进仓日期截

止]))) AND ((入库.PO) Like IIf(IsNull([Forms]![入库查

询]![PO]),'*','*' & [Forms]![入库查询]![PO] & '*')) AND

((产品资料.类别) Like IIf(IsNull([Forms]![入库查询]![类别

]),'*',[Forms]![入库查询]![类别])) AND ((产品资料.用途)

Like IIf(IsNull([Forms]![入库查询]![用途]),'*',[Forms]![

入库查询]![用途])));


Private Sub Command27_Click()
Me.产品编号 = Null
Me.类别 = Null
Me.用途 = Null
Me.PO = Null
Me.进仓日期开始 = Null
Me.进仓日期截止 = Null
Me.入库查询_子窗体.Requery

End Sub

 

 

有4个因为名称不统一找不到!

 

请再仔细检查一下!!!

供参考



wang decheng 发表于:2010-06-01 11:42:04

你的情况,我应该比较有发言权,因为我第一个回复的的提问。其实,看了一下你的文件,也没有什么大问题,主要是子窗体的记录源上面,你又加上了查询语句,这个应改成查询“入库查询”。另外还有主窗体文本框的名称和查询引用的条件不一致的情况。比如开始日期和截止日期,你在主窗体文本框中的名称是text16,和text18。在vba语句上也要一致。

另外也不要太钻牛角尖。为什么你的子窗体只能显示“五金半成品”?一时还真难以说清。我发现把你“清空”按钮的vba语句改对了,就全部显示了。

以后多做多看就成了,没有什么“机关”在里面。



Lee 发表于:2010-06-01 23:21:27
wang先生及各位朋友你们好,我想有必要把修改步骤说一下,各位看看有没有遗漏,以我第一次上传文件为例:
1. 查询窗体内的文本框6个中有4个与VB代码中的描述不一致,这里可选择修改文本框名称或修改VB代码,wang先生第一次是修改了文本框名称,combo23改为类别、combo25改为用途、text16改为进仓日期开始、text18改为进仓日期截止。
2. 继续对查询及清除按钮的VB代码进行修改,把语句中的“入库查询 子窗体”改为“入库查询_子窗体”,把“进仓日期结束”改为“进仓日期截止”。
3. 在入库查询窗体设计视图中,双击子窗体左上角,打开子窗体属性,在记录源选项中删除“入库查询.[供应商/部门], 入库查询.备注”两个多余字段。
我完成以上修改后,“入库查询”窗体打开后,子窗体还是打不开无数据显示的。不知我还漏了什么地方没修改。

wang decheng 发表于:2010-06-02 09:03:51

"3. 在入库查询窗体设计视图中,双击子窗体左上角,打开子窗体属性,在记录源选项中删除“入库查询.[供应商/部门], 入库查询.备注”两个多余字段。"

***********

 

此句不妥。记录源中只有“入库查询”,没有任何多余文字(select.....也是多余)。



Lee 发表于:2010-06-03 11:27:52

不好意思,这几天网络都不正常时断时续,所以未能及时回复。

wang先生你回复上传的文件记录源是“SELECT.......”,

 

而关键是就算我把记录源改为“入库查询”结果也是一样。真气人,就差那么一点点,就是不知问题了出在哪,而别人修改后上传的文件却能正常打开。

 



总记录:22篇  页次:1/2 9 1 2 8 :