Office中国论坛/Access中国论坛

标题: [分享]一个实用的筛选排序窗体 [打印本页]

作者: gxlishuxin    时间: 2006-6-2 08:49
标题: [分享]一个实用的筛选排序窗体
[attach]18204[/attach]

作者: tmtony    时间: 2006-6-2 08:56
不错不错,谢谢分享,不过代码还可做得更通用些
作者: cszyq    时间: 2006-6-2 14:55
xiexie
作者: kapqxy0    时间: 2006-6-2 17:21
不错
作者: gxlishuxin    时间: 2006-6-3 04:34
不错不错,谢谢分享,不过代码还可做得更通用些

感谢tmtony站长的关注,可否具体点说明代码如何做到更通用?
作者: tmtony    时间: 2006-6-3 07:51
可在窗体加载的时候加上如下代码:

Dim ctr As Control
For Each ctr In Me.Controls
    If Right(ctr.Name, 2) = "标签" Then
        ctr.OnClick = "=orderme('" & Left(ctr.Name, Len(ctr.Name) - 3) & "')"
    End If
    If (ctr.ControlType = acTextBox) Then
      If (Nz(ctr.ControlSource) <> "") Then ctr.OnDblClick = "=filterme('" & ctr.Name & "')"
    End If
Next
End Sub


这样,后面设置标签和文本框的单击和双击函数就可取消了,而且新增文本框字段和新增标签时不需再修改代码了[attach]18234[/attach]

作者: gxlishuxin    时间: 2006-6-4 06:20
非常感谢tmtony站长的指点,我在之前的编程中与本例相关的应用上都为一个一个的Control编写相同的代码而厌烦。我在制作flash文件时,也使用过OnClick =事件编程,但就没有想到在access中如此巧妙的应用。
作者: 120840580    时间: 2006-6-5 03:23
谢谢 ~12




作者: fannky    时间: 2006-6-5 16:55
以下是引用tmtony在2006-6-2 23:51:00的发言:


可在窗体加载的时候加上如下代码:

Dim ctr As Control
For Each ctr In Me.Controls
    If Right(ctr.Name, 2) = "标签" Then
        ctr.OnClick = "=orderme('" & Left(ctr.Name, Len(ctr.Name) - 3) & "')"
    End If
    If (ctr.ControlType = acTextBox) Then
      If (Nz(ctr.ControlSource) <> "") Then ctr.OnDblClick = "=filterme('" & ctr.Name & "')"
    End If
Next
End Sub


这样,后面设置标签和文本框的单击和双击函数就可取消了,而且新增文本框字段和新增标签时不需再修改代码了[attach]18234[/attach]

你这样改得源文件会出错,按“合同编号”有会出错
作者: bluelevin    时间: 2006-6-8 00:05
好东西!!!!
作者: wxmins    时间: 2006-6-8 01:50
恩,写的不错,感谢分享!


作者: flysmallfox    时间: 2006-6-24 03:36

作者: utngrihii    时间: 2006-11-18 22:34
谢谢分享[


作者: 浩雨    时间: 2006-11-20 06:23
不错!顶!
作者: mysky    时间: 2006-11-20 06:43
vb ......[em01]
作者: etc6lj    时间: 2006-11-20 21:44
收获很大...
作者: ljylyzq    时间: 2006-11-21 17:09
ok
作者: ljylyzq    时间: 2006-11-21 17:10
下不了
作者: ljylyzq    时间: 2006-11-21 17:11
怎样才能下载
作者: 风二娘    时间: 2006-11-21 19:59
下来先看看,谢谢分享哦!
作者: huangxiuwen    时间: 2008-1-12 07:59
顶你。顶你。顶你。顶你。顶你。
作者: huangxiuwen    时间: 2008-1-22 15:35
顶你。顶你。顶你。顶你。顶你。顶你。
作者: zwtiger    时间: 2008-1-22 19:08
不错!先下下来学习一下
作者: WDLRCZT    时间: 2008-1-22 22:36
好东西收藏了~~~~~
作者: wolfman    时间: 2008-1-23 14:54
不学不知道,access还有这么多功能呢
作者: fangkinght    时间: 2008-2-20 09:27
:lol
作者: qinds1977    时间: 2008-2-20 09:34
好东西
作者: REORX    时间: 2008-2-24 16:58
感谢分享 学习中
作者: tempwu    时间: 2008-3-9 00:53
标题: 好东西!!!!
好东西!!!!好东西!!!!好东西!!!!好东西!!!!
作者: 云游子    时间: 2008-3-15 16:16
我也要收藏!
作者: 云游子    时间: 2008-3-15 16:24
才下了一个就没金钱了
作者: fuxuan123    时间: 2008-3-16 09:35
为什么下载不了啊,学习一下
作者: kn1394    时间: 2009-3-2 15:28
try
作者: chaojianan    时间: 2009-3-2 15:48
谢谢,借鉴学习。
作者: liuxinquan    时间: 2009-4-4 22:01
不错不错,谢谢分享,不过代码还可做得更通用些
作者: luhao    时间: 2009-4-5 08:13
可在窗体加载的时候加上如下代码:
Dim ctr As ControlFor Each ctr In Me.Controls    If Right(ctr.Name, 2) = "标签" Then        ctr.OnClick = "=orderme('" & Left(ctr.Name, Len(ctr.Name) - 3) & "')"    E ...
tmtony 发表于 2006-6-3 07:51
多谢分享
作者: 阿六爱狗    时间: 2009-4-6 16:47
谢谢分享
作者: njy6000    时间: 2009-4-6 23:59
确实很实用,马上用上,万分感谢楼主的奉献精神!
作者: shxh168    时间: 2009-6-1 14:20
收藏起来,以利借鉴。
作者: herry2003aa    时间: 2009-8-3 19:17
经典,需要好好学习
作者: wskbm    时间: 2009-8-7 14:40
有创意,我喜欢
作者: kpsimon    时间: 2009-8-8 12:40
谢谢分享




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