设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[模块/函数] 急!为什么老是报"类型不匹配"错误?

[复制链接]
跳转到指定楼层
1#
发表于 2009-2-3 14:48:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我定义了个函数,如何在过程中引用,总是报"类型不匹配"错误,请大家指教!
这个函数是引用控件内容,生成过滤内容.
详见附件!

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2009-2-3 15:07:55 | 只看该作者
Function FltStr(ComboBoxName As ComboBox)
If Left(ComboBoxName.Text, 2) = "所有" Then
FltStr = ""
Else
FltStr = ComboBoxName
End If
End Function


Private Sub PN_AfterUpdate()
Debug.Print FltStr(PN)
'Me.CFDetFG.Form.filter =
'Me.CFDetFG.Form.FilterOn = True
End Sub

FLDName As Field? 值列表会有字段名称吗?
3#
发表于 2009-2-3 15:38:10 | 只看该作者
Function FltStr(ComboBoxName As ComboBox, FLDName As String)
    If Left(ComboBoxName.Text, 2) = "?ùóD" Then
        FltStr = ""
    Else
        FltStr = FLDName & "='" & ComboBoxName.Value & "'"
    End If
End Function


Private Sub PN_AfterUpdate()
    Me.CFDetFG.Form.filter = FltStr(PN, "PN")
    Me.CFDetFG.Form.FilterOn = True
End






******************
*  一切皆有可能  *
******************


QQ群 48866293 / 12035577 / 7440532 / 13666209
http://forum.csdn.net/SList/Access .
http://www.accessbbs.cn/bbs/index.php .
http://www.accessoft.com/bbs/index.asp .
http://www.access-programmers.co.uk/forums .
http://www.office-cn.net .
.
http://www.office-cn.net/home/space.php?uid=141646 .
4#
 楼主| 发表于 2009-2-3 15:39:46 | 只看该作者
Private Sub PN_AfterUpdate()
Debug.Print Fl ...
Grant 发表于 2009-2-3 15:07


我是要定义一个表中的字段类型的参数的,FLDName是字段名,要怎么表示?
5#
 楼主| 发表于 2009-2-3 16:09:40 | 只看该作者
3# ACMAIN_CHM

多谢帮忙,已解决!!都是引号惹的货!
6#
 楼主| 发表于 2009-2-3 16:23:52 | 只看该作者
3# ACMAIN_CHM

如果用and 连接两个过滤内容,用下面的格式有问题,
Me.CFDetFG.Form.filter = FltStr(PN, "PN") & "And" & FltStr(pro, "pro")

刚刚试了下,会报错"除非控件获得焦点,否则您不能引用该控件的属性或方法"什么的,我把截图传上来了.请帮忙看看!

本帖子中包含更多资源

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

x
7#
发表于 2009-2-3 16:31:12 | 只看该作者
FltStr = FLDName & "='" & ComboBoxName.Value & "'"
能用value的情况尽量用value, 一般不用text. 注意看帮助中的注释段, 另一个建议是提问前,请先看帮助。

以下摘自 Microsoft Access 2003 Help

Text 属性
参阅应用于示例特性

使用 Text 属性可以设置或返回文本框中包含的文本,或组合框中文本框部分包含的文本。String 型,可读写。

expression.Text
expression      必需。返回“应用于”列表中的一个对象的表达式。
说明Text 属性用于设置在控件中显示的文本,也可以使用 Text 属性来读取控件的当前文本。
只能通过Visual Basic 来设置或读取该属性。

注释  若要设置或返回一个控件的 Text 属性,控件必须具有焦点,否则就会出错。要将焦点移到一个控件上,可以使用 SetFocus 方法或 GoToControl 操作。

当控件获得焦点时,Text 属性将包含控件中当前的文本数据,而 Value 属性将包含控件上一次保存的数据。当焦点移动到另一控件时,控件的数据将会更新,并且 Value 属性将设置为这一新值。在重新获得焦点之前,Text 属性设置是不可用的。如果使用“记录”菜单中的“保存记录”命令来保存控件中的数据,而不移动焦点,则 Text 属性和 Value 属性的设置将是相同的。





******************
*  一切皆有可能  *
******************

QQ群 48866293 / 12035577 / 7440532 / 13666209
http://forum.csdn.net/SList/Access .
http://www.accessbbs.cn/bbs/index.php .
http://www.accessoft.com/bbs/index.asp .
http://www.access-programmers.co.uk/forums .
http://www.office-cn.net .
.
http://www.office-cn.net/home/space.php?uid=141646 .
8#
 楼主| 发表于 2009-2-3 16:32:39 | 只看该作者
本帖最后由 olive_fy 于 2009-2-3 16:35 编辑

7# ACMAIN_CHM

谢谢!下次还要看把帮助看仔细些!

另外,那个过滤连接的格式正确吗?
9#
发表于 2009-2-3 17:00:05 | 只看该作者
本帖最后由 koutx 于 2009-2-3 17:01 编辑

给你一个改好的样本,去比较一下就明白了。再有下载你的问题库扣了我两块银元我也得弄回来呀!真不知网站为什么连帮助解决问题的下载也要扣银子?

本帖子中包含更多资源

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

x
10#
 楼主| 发表于 2009-2-3 20:50:48 | 只看该作者
9# koutx
谢谢,辛苦了!
这个钱也扣就是不太公平。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-26 16:21 , Processed in 0.089526 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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