以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]TopicLinkClick事件代码?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=119725)

--  作者:老鼠
--  发布时间:2018/5/30 20:30:00
--  [求助]TopicLinkClick事件代码?

 

以下是现有TopicLinkClick事件代码:

If e.page.name = e.link.name Then
    Tables("基础信息").Filter = e.page.name & "=\'" & e.link.name & "\'"
Else
    Tables("基础信息").Filter = "岗位类别=\'" & e.Page.name & "岗位\' and 岗位职称等级=\'" & e.link.name & "\'"
End If

 

 


图片点击可在新窗口打开查看此主题相关图片如下:捕获.png
图片点击可在新窗口打开查看
请老师们帮忙看看这个代码的错误地方,如何修正?标红字体代码句没有效果.
[此贴子已经被作者于2018/5/30 21:01:10编辑过]

--  作者:有点甜
--  发布时间:2018/5/30 21:10:00
--  
Tables("基础信息").Filter = "岗位类别=\'" & e.Page.name & "岗位\'"
--  作者:有点甜
--  发布时间:2018/5/30 21:11:00
--  

http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=118207&skin=0

 


--  作者:老鼠
--  发布时间:2018/5/30 21:50:00
--  
其实以前也问过这个问题,以下是以前老师给出的答案:

If e.page.name = "岗位类别" Then
Tables("基础信息").Filter = "岗位类别=\'" & e.link.name & "\'"
Else
Tables("基础信息").Filter = "岗位类别=\'" & e.Page.name & "岗位\' and 岗位职称等级=\'" & e.link.name & "\'"

msgbox(Tables("基础信息").Filter)
End If

可是它只有对:岗位分类统计,专技人员统计,工勤人员统计,管理人员统计有效果以外,其它的:部门分类统计,人员类别统计,学历及学位统计,政治面貌统计,性别分类统计都没有效果.
--  作者:老鼠
--  发布时间:2018/5/30 21:52:00
--  
也就是说,要后面的有效果就是要首先问的一楼中的标红字体代码起作用.
--  作者:有点甜
--  发布时间:2018/5/30 22:02:00
--  

1、你看懂代码了没有?最简单的筛选都不会写?http://www.foxtable.com/webhelp/scr/1647.htm

 

2、你要合成的条件,是要筛选哪个列的数据?你直接写条件 xxx列=\'xxx值\' 进行测试,有效以后再谈其它。


--  作者:老鼠
--  发布时间:2018/5/30 22:36:00
--  

If e.page.name = "岗位类别" Then
    Tables("基础信息").Filter = "岗位类别=\'" & e.link.name & "\'"
ElseIf e.Page.name = "工作部门" Then
    Tables("基础信息").Filter = "工作部门=\'" & e.link.name & "\'"
ElseIf e.Page.name = "人员类别" Then
    Tables("基础信息").Filter = "人员类别=\'" & e.link.name & "\'"
ElseIf e.Page.name = "学历及学位" Then
    Tables("基础信息").Filter = "学历及学位=\'" & e.link.name & "\'"
ElseIf e.Page.name = "政治面貌" Then
    Tables("基础信息").Filter = "政治面貌=\'" & e.link.name & "\'"
ElseIf e.Page.name = "性别" Then
    Tables("基础信息").Filter = "性别=\'" & e.link.name & "\'"
Else
    Tables("基础信息").Filter = "岗位类别=\'" & e.Page.name & "岗位\' and 岗位职称等级=\'" & e.link.name & "\'"
End If

 

 

以上是刚写的,但感觉就是太长了。能有简单的方式吗?


--  作者:有点甜
--  发布时间:2018/5/30 22:57:00
--  

回复7楼,必须分开判断e.page.name的

 


Select Case e.page.name
    Case "部门分类", "人员类别", "学历及学位", "政治面貌", "性别"
        Tables("基础信息").Filter = e.page.name & "=\'" & e.link.name & "\'"
    Case Else
        Tables("基础信息").Filter = "岗位类别=\'" & e.Page.name & "岗位\' and 岗位职称等级=\'" & e.link.name & "\'"
End Select