Foxtable(狐表)用户栏目专家坐堂 → 多文件重命名序号问题 求助


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

主题:多文件重命名序号问题 求助

帅哥,在线噢!
yifan3429
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2466 积分:22761 威望:0 精华:0 注册:2011/3/29 17:14:00
多文件重命名序号问题 求助  发帖心情 Post By:2021/7/1 13:49:00 [只看该作者]

Dim ss As String = e.filename
                    Dim Index As Integer = ss.LastIndexOf(".")
                    Dim hz As String = ss.SubString(Index,ss.length-Index)
                    e.filename = e.DataRow("岗位名称") & e.DataRow("职员姓名") &  hz
                    If e.DataRow(e.DataCol.name).Contains(e.FileName) Then
                        Dim max As Integer = 0
                        For Each s As String In e.DataRow.Lines(e.DataCol.name)
                            If s Like "*" & e.DataRow("岗位名称") & e.DataRow("职员姓名") &  "*" Then
                                Dim fni1 As Integer=s.LastIndexOf("(")
                                If fni1 > -1 Then
                                    Dim fni2 As Integer = s.LastIndexOf(")")
                                    fni1 = s.SubString(fni1+1, fni2 - fni1 - 1)
                                    If fni1 > max Then
                                        max = fni1
                                    End If
                                End If
                            End If
                        Next
                        e.filename = e.DataRow("岗位名称") & e.DataRow("职员姓名") &  "(" & (max+1) & ")" & hz
                    End If
                End If


图片点击可在新窗口打开查看此主题相关图片如下:企业微信截图_20210701134958.png
图片点击可在新窗口打开查看

继续添加就不会重名了 需求是 文件(1) 文件(2) 文件(3) 
现在是原文正常  第二个是(1)第三个就会报重不会自动命名序号了

[此贴子已经被作者于2021/7/1 13:51:39编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2466 积分:22761 威望:0 精华:0 注册:2011/3/29 17:14:00
  发帖心情 Post By:2021/7/1 13:58:00 [只看该作者]

OK了 路径错误

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


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/1 14:03:00 [只看该作者]

调试看看

                    If e.DataRow(e.DataCol.name).Contains(e.FileName) Then
                        Dim max As Integer = 0
                        For Each s As String In e.DataRow.Lines(e.DataCol.name)
msgbox(s)
                            If s Like "*" & e.DataRow("岗位名称") & e.DataRow("职员姓名") &  "*" Then
                                Dim fni1 As Integer=s.LastIndexOf("(")
msgbox(fni1)
                                If fni1 > -1 Then
                                    Dim fni2 As Integer = s.LastIndexOf(")")
msgbox(fni2)
                                    fni1 = s.SubString(fni1+1, fni2 - fni1 - 1)
msgbox(fni1 )
                                    If fni1 > max Then
                                        max = fni1
                                    End If
                                End If
                            End If
                        Next
                        e.filename = e.DataRow("岗位名称") & e.DataRow("职员姓名") &  "(" & (max+1) & ")" & hz
                    End If

 回到顶部