Foxtable(狐表)用户栏目专家坐堂 → [求助]窗口录入人员姓名时的筛选问题


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

主题:[求助]窗口录入人员姓名时的筛选问题

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


加好友 发短信
等级:幼狐 帖子:174 积分:1671 威望:0 精华:0 注册:2018/4/22 18:54:00
[求助]窗口录入人员姓名时的筛选问题  发帖心情 Post By:2023/5/28 10:59:00 [只看该作者]



各位老师好,做一个差旅费管理项目,需要防止录入出差人员时与以往录入的记录重复,例如李光明和同事315日至22日在甲地出差,差旅费已在系统录入并报销,本次又录入另外几个同事317日至26日在乙地出差,事实上李光明不可能在交叉的时间段内到甲乙两个地方出差。我想在录入窗口录入时就自动筛选出来,然后弹出一个提示框,可是下面的代码不行,只能筛选重复出差人员,但不能对出发时间和返回时间进行筛选,请老师指点。


For Each s As String In e.form.controls("出差人姓名").text.split(",")  

    With CurrentTable

        Dim r As Integer

        r = .FindRow("[出差人姓名]  like '%," & s & ",%'") 

        If r >= 0 Then '如果找到的话

            Dim dr As Integer

            dr = .FindRow("[返回日期] >#" & Forms("差旅费录入").Controls("出发日期").value & "# and [出发日期] <#" & Forms("差旅费录入").controls("返回日期").value & "# ")

            If dr > 0 Then

                .Position = r '定位到找到的行.

                MessageBox.Show("有出差人员与以前记录重复","提示",MessageBoxButtons.OK,MessageBoxIcon.Error)

            End If

        End If

    End With

Next



此主题相关图片如下:360截图20230522124055091.jpg
按此在新窗口浏览图片

此主题相关图片如下:360截图20230522124225684.jpg
按此在新窗口浏览图片


[此贴子已经被作者于2023/5/28 11:03:58编辑过]

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


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

请上传实例说明

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


加好友 发短信
等级:六尾狐 帖子:1348 积分:9827 威望:0 精华:0 注册:2015/6/30 8:46:00
  发帖心情 Post By:2023/5/28 22:17:00 [只看该作者]

       r = .FindRow("[出差人姓名]  like '%," & s & ",%'") '如果是第一个人,或最后一个人,他们前面或后面,没有","这个字符的,这样r是找不到的。建议转成集合再找,或直接在原字符前和后加上","

dim txt as string = "," & e.form.controls("出差人姓名").text & ","


试试:

            dr = .FindRow("[出差人姓名] like '%," & s & ",%' and (([出发日期] <= #" & Forms("差旅费录入").Controls("出发日期").value & " # and [返回日期] >= #" & Forms("差旅费录入").Controls("出发日期").value & "#) or  

([出发日期] <= #" & Forms("差旅费录入").Controls("返回日期").value & "# and [返回日期] >= #" & Forms("差旅费录入").Controls("返回日期").value & "#))"


[此贴子已经被作者于2023/5/28 22:17:49编辑过]

 回到顶部