Foxtable(狐表)用户栏目专家坐堂 → 一个款号有多个,文件 文件,图片前缀名字跟款号名一致时,怎样自动批量插入


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

主题:一个款号有多个,文件 文件,图片前缀名字跟款号名一致时,怎样自动批量插入

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


加好友 发短信
等级:小狐 帖子:308 积分:3035 威望:0 精华:0 注册:2011/12/26 11:58:00
一个款号有多个,文件 文件,图片前缀名字跟款号名一致时,怎样自动批量插入  发帖心情 Post By:2013/1/9 17:17:00 [只看该作者]

你好! 一个款号有多个 文件,  文件,图片前缀名字跟款号名一致时,怎样自动批量插入
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目9.zip



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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/1/9 18:12:00 [只看该作者]

  你做一个按钮,然后运行代码。

Dim dlg As New FolderBrowserDialog
If dlg.ShowDialog = DialogResult.Ok Then
    For Each file As String In FileSys.GetFiles(dlg.SelectedPath)
        Dim fullname As String = FileSys.GetName(file)
        Dim ext As String = fullname.Substring(fullname.IndexOf("."))
        Dim name As String = left(fullname, 5)
        Dim fdr = DataTables("表A").Find("款号 = '" & Name & "'")
        If fdr IsNot Nothing Then
            Select Case ext
                Case ".jpg"
                    fdr("照片") &= fullname & vbcrlf
                    FileSys.CopyFile(file, DataTables("表A").DataCols("照片").DefaultFolder & "\" & fullname, True)
                Case ".xls", ".xlsx"
                    fdr("资料") &= fullname & vbcrlf
                    FileSys.CopyFile(file, DataTables("表A").DataCols("资料").DefaultFolder & "\" & fullname, True)
            End Select
        End If
    Next
End If
[此贴子已经被作者于2013-1-9 18:12:39编辑过]

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


加好友 发短信
等级:小狐 帖子:308 积分:3035 威望:0 精华:0 注册:2011/12/26 11:58:00
  发帖心情 Post By:2013/1/9 21:49:00 [只看该作者]

林老师,谢谢您!Foxtable功用真的不可思议,非常神!!!

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


加好友 发短信
等级:小狐 帖子:308 积分:3035 威望:0 精华:0 注册:2011/12/26 11:58:00
  发帖心情 Post By:2013/1/10 9:02:00 [只看该作者]

早上!林老师,能否加上一名代码,不用每次选择文件夹,事先设置好指定 文件夹

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/1/10 9:04:00 [只看该作者]

 这样

Dim filePath As String = "d:\"

For Each file As String In FileSys.GetFiles(filePath)
    Dim fullname As String = FileSys.GetName(file)
    Dim ext As String = fullname.Substring(fullname.IndexOf("."))
    Dim name As String = left(fullname, 5)
    Dim fdr = DataTables("表A").Find("款号 = '" & Name & "'")
    If fdr IsNot Nothing Then
        Select Case ext
            Case ".jpg"
                fdr("照片") &= fullname & vbcrlf
                FileSys.CopyFile(file, DataTables("表A").DataCols("照片").DefaultFolder & "\" & fullname, True)
            Case ".xls", ".xlsx"
                fdr("资料") &= fullname & vbcrlf
                FileSys.CopyFile(file, DataTables("表A").DataCols("资料").DefaultFolder & "\" & fullname, True)
        End Select
    End If
Next

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


加好友 发短信
等级:小狐 帖子:308 积分:3035 威望:0 精华:0 注册:2011/12/26 11:58:00
  发帖心情 Post By:2013/1/10 9:14:00 [只看该作者]

不好意思,再麻烦你了,每点击一次按钮,就自动插入,点击N次,就有N个相同内容循环插入,我想 点击N次,只有一个循环的代码

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2013/1/10 9:28:00 [只看该作者]

 Dim filePath As String = "d:\"

For Each file As String In FileSys.GetFiles(filePath)
    Dim fullname As String = FileSys.GetName(file)
    Dim ext As String = fullname.Substring(fullname.IndexOf("."))
    Dim name As String = left(fullname, 5)
    Dim fdr = DataTables("表A").Find("款号 = '" & Name & "'")
    If fdr IsNot Nothing Then
        Select Case ext
            Case ".jpg"
                If fdr("照片").IndexOf(fullname) = -1 then
                    fdr("照片") &= fullname & vbcrlf
                    FileSys.CopyFile(file, DataTables("表A").DataCols("照片").DefaultFolder & "\" & fullname, True)
                End If
            Case ".xls", ".xlsx"
                If fdr("资料").IndexOf(fullname) = -1 Then
                    fdr("资料") &= fullname & vbcrlf
                    FileSys.CopyFile(file, DataTables("表A").DataCols("资料").DefaultFolder & "\" & fullname, True)
                End If
        End Select
    End If
Next

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


加好友 发短信
等级:小狐 帖子:308 积分:3035 威望:0 精华:0 注册:2011/12/26 11:58:00
  发帖心情 Post By:2013/1/10 9:43:00 [只看该作者]

谢谢!林老师

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


加好友 发短信
等级:幼狐 帖子:198 积分:1646 威望:0 精华:0 注册:2012/4/16 10:10:00
  发帖心情 Post By:2013/1/23 18:35:00 [只看该作者]

非常神奇,我也想要做这个,但有个问题是我的文件名是 “编号、日期| 来确定的 

如文件名:34、2013-01-09河池移动韦岚凤仅回收.doc

FOXTABLE中是

编号   |  日期

  34   |  2013-01-09

“|”表示不同列

这样有没有办法实现批量添加?

[此贴子已经被作者于2013-1-23 18:42:20编辑过]

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


加好友 发短信
等级:幼狐 帖子:198 积分:1646 威望:0 精华:0 注册:2012/4/16 10:10:00
  发帖心情 Post By:2013/1/23 19:00:00 [只看该作者]

如果只识别前面的编号也是可以的,编号是按月编的,每月一个文件夹,

还有一个问题是代码执行下来,文件都会拷贝到Attachments文件夹中,那样的话项目会越来越大,能不能不拷贝文件,只是建立起表跟原文件之间的一个连接,方便从表中直接打开文件就可以了


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