以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 自动实现查找目录是否存在 不存在就创建 目录下有指定文件就自动导入 代码怎么修正呢?实现实现往指定目录里丢文件,代码自动导入并进行匹配字段值! (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=132333) |
-- 作者:李孝春 -- 发布时间:2019/3/20 9:36:00 -- 自动实现查找目录是否存在 不存在就创建 目录下有指定文件就自动导入 代码怎么修正呢?实现实现往指定目录里丢文件,代码自动导入并进行匹配字段值! 自动实现查找目录是否存在 不存在就创建 目录下有指定文件就自动导入 代码怎么修正呢? 有三段代码: 怎么将三段代码融合呢?实现往指定目录里丢文件,代码自动导入并进行匹配字段值! 代码:查找是否有目录,如果没有就新建,如果有就查找是否有指定的文件存在 If FileSys.DirectoryExists("d:\\MyFolder") Then \'如果目录C:\\MyFolder存在 MessageBox.Show("我存在哦") If FileSys.FileExists("d:\\MyFolder\\案件基本信息.xls") Then Messagebox.Show("文件已经存在!","提示") Else Messagebox.Show("文件不存在或已经被删除!","提示") End If Else FileSys.CreateDirectory("d:\\MyFolder") \'创建目录 MessageBox.Show("我新建成功了") End If 代码:实现导入指定文件表 Dim ip As New Importer ip.SourcePath = "d:\\MyFolder\\案件基本信息.xls"" \'指定数据文件 ip.SourceTableName = "案件基本信息$" \'指定要导入的表 ip.NewTableName ="案件基本信息" \'导入后的表名 ip.Format = "Excel" \'指定导入格式 ip.Import() 代码:实现导入自动匹配对应的字段列值 Dim dlg As New OpenFileDialog dlg.Filter = "Excel文件|*.xls;*.xlsx" If dlg.ShowDialog =DialogResult.OK Then 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 |
-- 作者:有点甜 -- 发布时间:2019/3/20 9:44:00 -- Dim dlg As New OpenFileDialog
|
-- 作者:李孝春 -- 发布时间:2019/3/20 11:28:00 -- 回复:(有点甜)Dim dlg As New OpenFileDialogdlg.F... 有点甜老师 下面的代码可以实现d:\\MyFolder\\案件基本信息.xlsx这个目录下的这个文件自动导入了 如果这个文件下有多个不同名字的 甚至还有xls的文件 怎么实现便利当前目录下的所有Excel格式文件 全部自动导入呢? If FileSys.DirectoryExists("d:\\MyFolder") Then \'如果目录C:\\MyFolder存在 MessageBox.Show("我存在哦") If FileSys.FileExists("d:\\MyFolder\\案件基本信息.xlsx") Then Messagebox.Show("文件已经存在!","提示") Dim t As Table = Tables("案件基本信息") t.StopRedraw() Dim Book As New XLS.Book("d:\\MyFolder\\案件基本信息.xlsx") 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() Else Messagebox.Show("文件不存在或已经被删除!","提示") End If Else FileSys.CreateDirectory("d:\\MyFolder") \'创建目录 MessageBox.Show("我新建成功了") End If
|
-- 作者:有点甜 -- 发布时间:2019/3/20 12:33:00 -- If FileSys.DirectoryExists("d:\\MyFolder") Then \'如果目录C:\\MyFolder存在 MessageBox.Show("我存在哦") For Each file As String In FileSys.GetFiles("d:\\MyFolder\\") If file.EndsWith(".xls") OrElse file.EndsWith(".xlsx") Then Dim t As Table = Tables("案件基本信息") t.StopRedraw() Dim Book As New XLS.Book(file) 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 Next Else FileSys.CreateDirectory("d:\\MyFolder") \'创建目录 MessageBox.Show("我新建成功了") End If [此贴子已经被作者于2019/3/20 12:52:44编辑过]
|
-- 作者:李孝春 -- 发布时间:2019/3/20 12:49:00 -- 回复:(有点甜)If FileSys.DirectoryExists("d:\MyF... 没有正确获取到d:\\MyFolder\\目录下的公诉和批捕两个excel文件名称,继续求解 If FileSys.DirectoryExists("d:\\MyFolder") Then \'如果目录C:\\MyFolder存在 output.Show("目录存在") For Each file As String In FileSys.GetDirectories("d:\\MyFolder\\") If file.EndsWith("*.xls") OrElse file.EndsWith("*.xlsx") Then Dim t As Table = Tables("案件基本信息") t.StopRedraw() Dim Book As New XLS.Book(file) output.Show("file") 没有正确获取到d:\\MyFolder\\目录下的公诉和批捕两个excel文件名称,继续求解 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 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() If FileSys.FileExists(file) Then \'如果指定的文件存在 FileSys.DeleteFile(file,2,2) \'则彻底删除之 End If End If Next Else FileSys.CreateDirectory("d:\\MyFolder") \'创建目录 End If
|
-- 作者:有点甜 -- 发布时间:2019/3/20 12:52:00 -- output.Show(file) |
-- 作者:有点甜 -- 发布时间:2019/3/20 12:53:00 -- If FileSys.DirectoryExists("d:\\MyFolder") Then \'如果目录C:\\MyFolder存在 msgbox(file) |