Foxtable(狐表)用户栏目专家坐堂 → [求助]窗口录入人员姓名时筛选与表中已有姓名是否重复的请教


  共有4127人关注过本帖树形打印复制链接

主题:[求助]窗口录入人员姓名时筛选与表中已有姓名是否重复的请教

帅哥哟,离线,有人找我吗?
tkxffb
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:174 积分:1671 威望:0 精华:0 注册:2018/4/22 18:54:00
[求助]窗口录入人员姓名时筛选与表中已有姓名是否重复的请教  发帖心情 Post By:2023/5/22 13:28:00 [只看该作者]

老师好,做一个差旅费管理的系统,需要防止录入出差人员时作假多领差旅费,例如李光明和同事3月15日至22日在甲地出差,差旅费已在系统录入并报销,他另外几个同事3月17日至26日在乙地出差,但在乙地出差的同事为了多领出差补助,把李光明也写到乙地出差的人员名单中了。我想在录入窗口录入时就自动筛选出来,然后弹出一个提示框,可是不会做,试了多次也搞不定,请老师指点。


图片点击可在新窗口打开查看此主题相关图片如下:360截图20230522124055091.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:360截图20230522124225684.jpg
图片点击可在新窗口打开查看

[此贴子已经被作者于2023/5/22 13:33:41编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110758 积分:563716 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/5/22 13:33:00 [只看该作者]

具体需要做什么用的筛选?写了什么代码?

 回到顶部
帅哥哟,离线,有人找我吗?
tkxffb
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:174 积分:1671 威望:0 精华:0 注册:2018/4/22 18:54:00
  发帖心情 Post By:2023/5/22 13:37:00 [只看该作者]

有点蓝老师好,尝试着用Select、like等方式,但都不行,完全不得要领,不知道该怎么做了,麻烦您指点一下,谢谢

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110758 积分:563716 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/5/22 13:43:00 [只看该作者]

具体需要做什么样的筛选?举例说明一下

 回到顶部
帅哥哟,离线,有人找我吗?
tkxffb
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:174 积分:1671 威望:0 精华:0 注册:2018/4/22 18:54:00
  发帖心情 Post By:2023/5/22 13:54:00 [只看该作者]

我结合着上面的两个图说,第一个图中,李光明于3月15日至22日在甲地出差,并且已经录入差旅费管理系统,姓名登记在表中了。第二个图,他同事于3月17日至26日在乙地出差,回来后他同事登录管理系统,在录入窗口把李光明的名字录入了,我想实现的目的是,当他同事在出发日期填入3月17日后,触发窗口控件事件,弹出提醒窗口,提示李光明不可能于3月15日至22日在甲地出差,又于3月17日至26日到乙地出差。
[此贴子已经被作者于2023/5/22 13:55:10编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110758 积分:563716 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/5/22 14:01:00 [只看该作者]

for each s as string  in e.form.controls("出差人姓名").text.split(",")
if datatables("某表").find("','+出差人姓名+',' like '%," & s & ",%' and 出发日期 >=#" & e.form.controls("出发日期").value & "# and 返回日期 <=#" & e.form.controls("返回日期").value & "#") isnot nothing then
msgbox("提示")
end if
next

 回到顶部
帅哥哟,离线,有人找我吗?
tkxffb
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:174 积分:1671 威望:0 精华:0 注册:2018/4/22 18:54:00
  发帖心情 Post By:2023/5/26 20:41:00 [只看该作者]

老师好,不好意思,还得麻烦您。下面是我参照您写的指点写的代码,但这里有一个问题,比如上面的表中有个人叫李四,我在窗口中录入“李四林”时,也弹出提醒,能不能请麻烦您改一下?谢谢

For Each s As String In e.form.controls("出差人姓名").text.split(",")   
       If DataTables("差旅费统计表").find("','+出差人姓名+',' like '," & s & ",' and 返回日期 >#" & e.form.controls("出发日期").value & "# and 出发日期 <#" & e.form.controls("返回日期").value & "#") IsNot Nothing Then
        If MessageBox.Show("有出差人员与以前记录重复","提示",MessageBoxButtons.OK,MessageBoxIcon.Error)=DialogResult.OK Then
           Tables("差旅费统计表").current("出差人姓名") = Nothing
           Tables("差旅费统计表").current("出差人数") = Nothing
        End If
    ElseIf DataTables("差旅费统计表").find("','+出差人姓名+',' like '," & s & ",' and 返回日期 =#" & e.form.controls("出发日期").value & "#") IsNot Nothing Then
        If MessageBox.Show("有出差人员同日一返一出,请核减出差补助","提示",MessageBoxButtons.OK,MessageBoxIcon.Error)=DialogResult.OK Then
        End If
    ElseIf DataTables("差旅费统计表").find("','+出差人姓名+',' like '," & s & ",' and 出发日期 =#" & e.form.controls("返回日期").value & "#") IsNot Nothing Then
        If MessageBox.Show("有出差人员同日一返一出,请核减出差补助","提示",MessageBoxButtons.OK,MessageBoxIcon.Error)=DialogResult.OK Then
        End If
    End If
Next

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110758 积分:563716 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/5/27 8:32:00 [只看该作者]

If DataTables("差旅费统计表").find("','+出差人姓名+',' like '%," & s & ",%' and 返回

 回到顶部
帅哥哟,离线,有人找我吗?
tkxffb
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:174 积分:1671 威望:0 精华:0 注册:2018/4/22 18:54:00
  发帖心情 Post By:2023/5/27 23:08:00 [只看该作者]


[此贴子已经被作者于2023/5/28 1:13:07编辑过]

 回到顶部