Foxtable(狐表)用户栏目专家坐堂 → 关于修改文件名


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

主题:关于修改文件名

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/9 21:14:00 [显示全部帖子]

If FileSys.FileExists(path  & "\" & zpxghmc & name(1))=False Then

 

改成

 

If FileSys.FileExists(path & dr("客户姓名") & "\" &  zpxghmc & name(1)) = False Then

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/9 21:42:00 [显示全部帖子]

以下是引用裴保民在2019/1/9 21:31:00的发言:
谢谢甜老师
 
再请教一个问题,,这样只能一个一个得修改文件名,太麻烦了! 能一次性将所有符合条件的文件一次性更改吗?

 

你的意思是循环表格的每一行,然后去修改?

 

那你写成 for each r as row in tables("客户资料").rows


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/9 21:50:00 [显示全部帖子]

改成

 

FileSys.CopyFile(file, ProjectPath  & "复制到文件夹/" & name(1), True)
FileSys.RenameFile(file, zpxghmc & name(1))



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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/9 22:19:00 [显示全部帖子]

这两句代码不可能有问题的,加入msgbox弹出各个值看一下。

 

FileSys.CopyFile(file, ProjectPath  & "复制到文件夹/" & name(1), True)
FileSys.RenameFile(file, zpxghmc & name(1))


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/9 22:39:00 [显示全部帖子]

以下是引用裴保民在2019/1/9 22:22:00的发言:
刚才弹出错误框了,不知道怎么回事,现在有没事了

 

如果出问题,要学会调试

 

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

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/9 22:41:00 [显示全部帖子]

以下是引用裴保民在2019/1/9 22:31:00的发言:
为什么要先复制再重新命名呢? 我的意思是重新修改名后将新命名的文件拷贝到新文件夹中

 

改成

 

FileSys.RenameFile(file, zpxghmc & name(1))

FileSys.CopyFile(path  & "\" & zpxghmc & name(1), ProjectPath  & "复制到文件夹/" & name(1), True)


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/9 22:43:00 [显示全部帖子]

以下是引用裴保民在2019/1/9 22:22:00的发言:
甜老师怎么循环呢

 

for each r as row in tables("客户资料").rows

    '这里写你本来的代码

    '把t.current都替换成r

next


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/9 22:57:00 [显示全部帖子]

改成

 

FileSys.RenameFile(file, zpxghmc & name(1))

FileSys.CopyFile(path & dr("客户姓名") & "\" & zpxghmc & name(1), ProjectPath  & "复制到文件夹/" & name(1), True)


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/10 9:25:00 [显示全部帖子]

Dim path =  ProjectPath  & "测试图片\"
For Each r As Row In Tables("客户资料").rows
    Dim zpxghmc As String
    Dim khmc As String
    Dim dr = r
    zpxghmc =dr("客户姓名")
    If dr.IsNull("身份证号") = False Then
        zpxghmc =zpxghmc & right(dr("身份证号"),6) & "-"
    Else
        zpxghmc = zpxghmc & "-"
    End If
   
    khmc =r("客户姓名")
    If FileSys.DirectoryExists( path  & dr("客户姓名")) Then
        For Each File As String In FileSys.GetFiles( path  & dr("客户姓名"))
            Dim name() As String = FileSys.GetName(file).split("-")
            If name.length > 1
                If FileSys.FileExists(path & dr("客户姓名") & "\" &  zpxghmc & name(1)) = False Then
                    If r IsNot Nothing Then
                        FileSys.CopyFile(file, ProjectPath  & "复制到文件夹/"  &  zpxghmc & name(1), True)
                        FileSys.RenameFile(file, zpxghmc & name(1))
                    End If
                End If
            End If
        Next
    Else
        MessageBox.Show("要修改的文件夹不存在!", "提示")
        Return 
    End If
    MessageBox.Show("照片名称修改成功!", "提示")      
Next

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/10 11:48:00 [显示全部帖子]

改成

 

    If FileSys.DirectoryExists( path  & dr("客户姓名")) Then
        For Each File As String In FileSys.GetFiles( path  & dr("客户姓名"))
            Dim name() As String = FileSys.GetName(file).split("-")
            If name.length > 1

                FileSys.CopyFile(file, ProjectPath  & "复制到文件夹/"  &  zpxghmc & name(1), True)
                If FileSys.FileExists(path & dr("客户姓名") & "\" &  zpxghmc & name(1)) = False Then
                    If r IsNot Nothing Then
                        FileSys.RenameFile(file, zpxghmc & name(1))
                    End If
                End If
            End If
        Next
    Else
        MessageBox.Show("要修改的文件夹不存在!", "提示")
        Return 
    End If


 回到顶部
总数 11 1 2 下一页