Foxtable(狐表)用户栏目专家坐堂 → [求助]求助Excel函数 转换成 狐表


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

主题:[求助]求助Excel函数 转换成 狐表

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


加好友 发短信
等级:童狐 帖子:220 积分:1751 威望:0 精华:0 注册:2016/3/2 9:22:00
[求助]求助Excel函数 转换成 狐表  发帖心情 Post By:2016/12/21 11:52:00 [只看该作者]

月开始,应该是本月第一天
图片点击可在新窗口打开查看此主题相关图片如下:函数1.png
图片点击可在新窗口打开查看
图片点击可在新窗口打开查看此主题相关图片如下:函数22.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2016/12/21 12:10:00 [只看该作者]

 必须写代码处理。

 

http://www.foxtable.com/webhelp/scr/0681.htm

 

 具体问题上传foxtable实例。


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


加好友 发短信
等级:童狐 帖子:220 积分:1751 威望:0 精华:0 注册:2016/3/2 9:22:00
  发帖心情 Post By:2016/12/21 14:35:00 [只看该作者]

我写的代码是这样,但是不正确?
想实现的效果是:“入司日期”< "本月第一天" 且 "离职日期" 为空值 或 “离职日期”大于等于 “本月第一天” 则
“前月末在职” 填入 “1”

Dim dq As DataRow = e.DataRow
Dim FirstDay As Date = New Date (Date.Today.Year,Date.Today.Month,1)
Dim LastDay As Date = New Date (Date.Today.Year,Date.Today.Month,Date.DaysInMonth(Date.Today.Year,Date.Today.Month))
Dim dt As DataTable =DataTables("员工信息表")
If e.DataCol.Name = "前月末在职" And dq.IsNull("前月末在职") = False Then
   If dq("入司日期") <  FirstDay  And dq("离职日期") IsNothing Or dq("离职日期") >= FirstDay Then
   dq("前月末在职") = "1"
       
End If
End If


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2016/12/21 15:00:00 [只看该作者]

Dim dq As DataRow = e.DataRow

If e.DataCol.Name = "前月末在职" And dq.IsNull("前月末在职") = False Then
    Dim FirstDay As Date = New Date (Date.Today.Year,Date.Today.Month,1)
    Dim LastDay As Date = firstDay.AddMonths(1)
    If dq("入司日期") <  FirstDay  AndAlso (dq.isnull("离职日期") = False OrElse dq("离职日期") >= FirstDay) Then
        dq("前月末在职") = "1"      
    End If
End If


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


加好友 发短信
等级:童狐 帖子:220 积分:1751 威望:0 精华:0 注册:2016/3/2 9:22:00
  发帖心情 Post By:2016/12/21 17:14:00 [只看该作者]

这个代码是什么原因, 就是我想实现: 
如果当月底之前依然在职,则dr5("当月末在职") ="1",我感觉代码没问题啊,怎么执行效果不对。

Dim dr5 As DataRow = e.DataRow
Dim FirstDay As Date = New Date (Date.Today.Year,Date.Today.Month,1)
Dim LastDay As Date = New Date (Date.Today.Year,Date.Today.Month,Date.DaysInMonth(Date.Today.Year,Date.Today.Month))
Dim dt As DataTable =DataTables("员工信息表")

图片点击可在新窗口打开查看此主题相关图片如下:代买2.png
图片点击可在新窗口打开查看

If ((dr5("入司日期") <= LastDay) AndAlso ((dr5.isnull("离职日期") =False) OrElse (dr5("离职日期") > LastDay ))) Then
    dr5("当月末在职") ="1"
Else
    dr5("当月末在职") ="0"
End If

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2016/12/21 17:26:00 [只看该作者]

写完代码以后,记得重置列。

 

Dim dr5 As DataRow = e.DataRow
Dim FirstDay As Date = New Date (Date.Today.Year,Date.Today.Month,1)
Dim LastDay As Date = firstday.AddMonths(1)
If ((dr5("入司日期") < LastDay) AndAlso ((dr5.isnull("离职日期") =False) OrElse (dr5("离职日期") > LastDay ))) Then
    dr5("当月末在职") ="1"
Else
    dr5("当月末在职") ="0"
End If


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


加好友 发短信
等级:童狐 帖子:220 积分:1751 威望:0 精华:0 注册:2016/3/2 9:22:00
  发帖心情 Post By:2016/12/21 17:37:00 [只看该作者]

代码不对,麻烦看下案例,
就是实现 如果在职“前月末在职”=1,否则 =0 
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:代码不对案例.zip


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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2016/12/21 18:13:00 [只看该作者]

Dim dr5 As DataRow = e.DataRow
Dim FirstDay As Date = New Date (Date.Today.Year,Date.Today.Month,1)
Dim LastDay As Date = firstday.AddMonths(1)
If ((dr5("入司日期") < LastDay) AndAlso (dr5.isnull("离职日期") OrElse dr5("离职日期") > LastDay )) Then
    dr5("当月末在职") ="1"
Else
    dr5("当月末在职") ="0"
End If

 回到顶部