Foxtable(狐表)用户栏目专家坐堂 → 自动实现查找目录是否存在 不存在就创建 目录下有指定文件就自动导入 代码怎么修正呢?实现实现往指定目录里丢文件,代码自动导入并进行匹配字段值!


  共有1975人关注过本帖平板打印复制链接

主题:自动实现查找目录是否存在 不存在就创建 目录下有指定文件就自动导入 代码怎么修正呢?实现实现往指定目录里丢文件,代码自动导入并进行匹配字段值!

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/3/20 9:44:00 [只看该作者]

Dim dlg As New OpenFileDialog
dlg.Filter = "Excel文件|*.xls;*.xlsx"
If dlg.ShowDialog =DialogResult.OK Then
   
    If FileSys.DirectoryExists("d:\MyFolder") Then '如果目录C:\MyFolder存在
        MessageBox.Show("我存在哦")
    Else
        FileSys.CreateDirectory("d:\MyFolder")  '创建目录
        MessageBox.Show("我新建成功了")
    End If
   
    Dim ip As New Importer
    ip.SourcePath = dlg.FileName
    ip.SourceTableName = "案件基本信息$" '指定要导入的表
    ip.NewTableName ="案件基本信息" '导入后的表名
    ip.Format = "Excel" '指定导入格式
    ip.Import()
   
    Dim t As Table = Tables("案件基本信息")
    t.StopRedraw()
    Dim Book As New XLS.Book(dlg.FileName)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
   
    Dim c As Integer
    For i As Integer = 0 To sheet.Cols.Count -1
        If sheet(0,i).text = "部门受案号" Then
            c = i
            Exit For
        End If
    Next
    'msgbox("案号列=" & c)
   
    For n As Integer = 1 To Sheet.Rows.Count -1
        Dim r As DataRow = t.DataTable.Find("部门受案号 = '" & sheet(n,c).text.trim() & "'")
        Dim Isnew As Boolean
        If r Is Nothing Then
            r = t.DataTable.AddNew()
            Isnew  = True
        End If
        For i As Integer = 0 To sheet.Cols.Count -1
            Dim cname As String = sheet(0, i).text
            If t.Cols.Contains(cname) Then
                If Isnew = False AndAlso cname = "是否关联" Then Continue For
                r(cname) = sheet(n, i).Text
            ElseIf cname = "移诉意见" Then
                r("移送意见") = sheet(n, i).Text
            ElseIf cname = "移诉案由" Then
                r("移送案由") = sheet(n, i).Text
                r("涉嫌案由") = sheet(n, i).Text
            ElseIf cname = "审结情况" Then
                r("审结处理结果") = sheet(n, i).Text
            ElseIf cname = "办结日期" Then
                r("审结日期") = sheet(n, i).Text
            End If
        Next
    Next
    t.ResumeRedraw()
End If

 


 回到顶部