Foxtable(狐表)用户栏目专家坐堂 → 关于word报表模板分组显示问题


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

主题:关于word报表模板分组显示问题

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


加好友 发短信
等级:三尾狐 帖子:701 积分:5004 威望:0 精华:0 注册:2016/4/15 22:24:00
  发帖心情 Post By:2024/6/8 13:56:00 [只看该作者]

Dim r As Row = tables("表C").current
Dim 身份证号码 As String = r("身份证号码")
Dim 编号 As String = r("人员编号")
msgbox(身份证号码 & "," & 编号)
For Each File As String In FileSys.GetFiles(ProjectPath & "\Attachments\照片文件夹\") 
    msgbox(File)
    Dim name As String = FileSys.GetName(file).split(".")(0) 
    msgbox(name)
    If name.contains(身份证号码) Then
        msgbox("开始替换:" & name.replace(身份证号码, 编号))
        FileSys.RenameFile(file, name.replace(身份证号码, 编号)) 
        msgbox("OK")
    End If
Next
老师, 经测试
第1个对话框:msgbox(身份证号码 & "," & 编号) , 有显示对话框, 但无内容, 是空白的
第2个对话框:msgbox(File), 显示正常
第3个对话框:msgbox(name), 显示正常
第4个对话框:msgbox("开始替换:" & name.replace(身份证号码, 编号)), 显示错误
详细错误信息:String cannot be Of zero length.Parameter name: oldValue

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


加好友 发短信
等级:三尾狐 帖子:701 积分:5004 威望:0 精华:0 注册:2016/4/15 22:24:00
  发帖心情 Post By:2024/6/8 14:26:00 [只看该作者]

For Each r As Row In Tables("表C").Rows
    Dim 身份证号码 As String = r("身份证号码")
    Dim 编号 As String = r("人员编号")
    msgbox(身份证号码 & "," & 编号)
    For Each File As String In FileSys.GetFiles(ProjectPath & "\Attachments\照片文件夹\") 
        msgbox(File)
        Dim name1 As String = FileSys.GetName(file).split(".")(0)
        Dim name2 As String = "." & FileSys.GetName(file).split(".")(1) 
        If 编号 Is Nothing Then '排除空白行
            ' If name1.contains(身份证号码) Then ’这一代码到底要不要?
            Dim file1 As String = name1.replace(身份证号码, 编号) & name2 '加上后缀
            msgbox(file1)
            FileSys.RenameFile(file, file1) '目前实际上未重命名?
            msgbox("OK")
        End If
    Next 
Next


'老师, 这里加上后缀后怎么修改?
[此贴子已经被作者于2024/6/8 14:38:25编辑过]

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


加好友 发短信
等级:超级版主 帖子:107648 积分:547549 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/6/8 14:41:00 [只看该作者]

For Each r As dataRow In dataTables("表C").select("人员编号 is not null")
    Dim 身份证号码 As String = r("身份证号码")
    Dim 编号 As String = r("人员编号")
    msgbox(身份证号码 & "," & 编号)
    For Each File As String In FileSys.GetFiles(ProjectPath & "\Attachments\照片文件夹\") 
        msgbox(File)
        Dim name1 As String = FileSys.GetName(file)
        msgbox(name1)
        If name1.contains(身份证号码) Then
            FileSys.RenameFile(file, name1.replace(身份证号码, 编号))
        end if
    Next 
Next

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


加好友 发短信
等级:三尾狐 帖子:701 积分:5004 威望:0 精华:0 注册:2016/4/15 22:24:00
  发帖心情 Post By:2024/6/8 17:05:00 [只看该作者]

详细错误信息:Object reference not set to an instance of an object.
老师,出现错误信息

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


加好友 发短信
等级:超级版主 帖子:107648 积分:547549 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/6/10 21:00:00 [只看该作者]

说过N遍了要学会调试,自行调试看哪一句代码出错

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


加好友 发短信
等级:三尾狐 帖子:701 积分:5004 威望:0 精华:0 注册:2016/4/15 22:24:00
  发帖心情 Post By:2024/6/11 10:22:00 [只看该作者]

此代码,以身份证号码命名,现文件名全部替换成"人员编号",代码完美
For Each r As Row In Tables("提取文件名").Rows 
    Dim 身份证号码 As String = r("身份证号码")
    Dim 编号 As String = r("人员编号")
    msgbox(身份证号码 & "," & 编号)
    For Each File As String In FileSys.GetFiles(ProjectPath & "\Attachments\照片文件夹2406\") 
        Dim name1 As String = FileSys.GetName(file).split(".")(0) '只生成文件名(不含路径,也不带文件后缀)
        Dim name2 As String = "." & FileSys.GetName(file).split(".")(1) '只生成文件后缀
        msgbox("文件名:" & name1 & ",  后缀:" & name2)
        If name1.contains(身份证号码) Then 
            Dim file1 As String = name1.replace(身份证号码, 编号) & name2 '加上后缀 ,开始替换     
            msgbox("开始替换:" & file1)
            FileSys.RenameFile(file, file1) '文件重命名
            msgbox("OK")
        End If
    Next
Next

'示例四
'如果表中有多个图片型或文件型列,那么应该在BeforeAttachFile判断列名,例如要求照片列只能插入JPG文件,而且存放在名为"照片"的子目录中,简历列只能插入Word文件,而且存放在名为"简历"的子目录中:
Dim ext As String
ext = e.FileName.SubString(e.FileName.LastIndexof(".") + 1) '获得文件后缀名
Select Case e.DataCol.Name
    Case "照片"
        If ext = "jpg" Then
            e.SubFolder = ext
        Else
            MessageBox.Show("此列只能插入jpg文件!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information)
            e.Cancel = True
        End If
    Case "简历"
        If ext = "doc" Then
            e.SubFolder = ext
        Else
            MessageBox.Show("此列只能插入Word文件!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information)
            e.Cancel = True
        End If
End Select
老师, 这是帮助中的示例四代码, 上述代码"照片"和"简历"文件夹, 自动放在Attachments文件夹中, 我想把"照片"和"简历"文件夹放在指定文件夹之中, 比如:ProjectPath & "\Attachments\我的文档2406\"
请问老师, 这里怎么指定存储路径

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


加好友 发短信
等级:超级版主 帖子:107648 积分:547549 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/6/11 10:24:00 [只看该作者]

e.SubFolder = "我的文档2406"

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


加好友 发短信
等级:三尾狐 帖子:701 积分:5004 威望:0 精华:0 注册:2016/4/15 22:24:00
  发帖心情 Post By:2024/6/11 11:10:00 [只看该作者]

谢谢老师

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


加好友 发短信
等级:三尾狐 帖子:701 积分:5004 威望:0 精华:0 注册:2016/4/15 22:24:00
  发帖心情 Post By:2024/6/11 18:12:00 [只看该作者]

老师,字符间距CharSpacing,  字符缩放函数是什么,也就是字体拉伸函数
[此贴子已经被作者于2024/6/11 19:28:13编辑过]

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


加好友 发短信
等级:超级版主 帖子:107648 积分:547549 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/6/11 21:08:00 [只看该作者]

没有这种函数。只有这些:http://www.foxtable.com/webhelp/topics/1179.htm

 回到顶部