Foxtable(狐表)用户栏目专家坐堂 → 合并文件


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

主题:合并文件

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


加好友 发短信
等级:婴狐 帖子:41 积分:332 威望:0 精华:0 注册:2023/2/23 17:14:00
合并文件  发帖心情 Post By:2024/4/28 10:41:00 [只看该作者]

有好多表格格式一样的文件、要把那些文件里的内容合并到一个表里去。该怎么处理?

 

 

 

 


图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20240428103820.png
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20240428103827.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2024/4/28 10:41:44编辑过]

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


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


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


加好友 发短信
等级:婴狐 帖子:41 积分:332 威望:0 精华:0 注册:2023/2/23 17:14:00
  发帖心情 Post By:2024/4/28 11:54:00 [只看该作者]

Dim  dlg As New  OpenFileDialog '定义一个新的OpenFileDialog
 dlg.Filter=  "excel文件|*.xlsx" '设置筛选器
If dlg.ShowDialog =  DialogResult.Ok Then  '如果用户单击了确定按钮
    Dim mg As New Merger
     mg.SourcePath = dlg.FileName
 mg.Format =  "excel"  '指定格式
          mg.SourceTableName = "国铁商城广综财"
          mg.DataTableName = "国铁商城低值易耗品清单表"
     mg.Merge()
 End If

 

 

 


图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20240428115249.png
图片点击可在新窗口打开查看


 所选的文件中、有"国铁商城广综财"这个表、但是却提示错误


图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20240428115256.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2024/4/28 11:55:19编辑过]

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


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

非标准文档格式:http://www.foxtable.com/webhelp/topics/2280.htm,请使用2楼的导入方式

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


加好友 发短信
等级:婴狐 帖子:41 积分:332 威望:0 精华:0 注册:2023/2/23 17:14:00
  发帖心情 Post By:2024/4/28 15:02:00 [只看该作者]

这是固定导入某一个文件、如果要改为打开文件对话框,合并用户指定的文件;要怎么改?

 

Dim  Book As New XLS.Book("D:\我的文件\Mylave\输出报表\三个系统低值易耗品台账\2024-04-28【三个系统低值易耗品】\行政办【三个系统低值易耗品】.xlsx")
 Dim  Sheet As XLS.Sheet = Book.Sheets(0)
Tables("国铁商城低值易耗品清单表").StopRedraw()
 '注意以下数组中列名称的顺序,必须和Excel表中的列顺序一致
Dim nms() As  String = {"序号","系统编号","订单号","商品名称","一级类目","售价","数量","售价小计","站段归属","申请站段","备注","采购单提交时间","使用站段","存放地点","保管人","低值易耗品备注"}
 '注意下面的循环变量从1开始,而不是从0开始,因为Excel表的第一行是标题
 For n As Integer = 4 To Sheet.Rows.Count -1
     Dim r As  Row = Tables("国铁商城低值易耗品清单表").AddNew()
     For  m As  Integer = 0 To nms.Length - 1
           r(nms(m)) = Sheet(n,m).Value
     Next
 Next
 Tables("国铁商城低值易耗品清单表").ResumeRedraw()


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


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

Dim  dlg As New  OpenFileDialog '定义一个新的OpenFileDialog
 dlg.Filter=  "excel文件|*.xlsx" '设置筛选器
If dlg.ShowDialog =  DialogResult.Ok Then  '如果用户单击了确定按钮
Dim  Book As New XLS.Book(dlg.FileName)

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


加好友 发短信
等级:婴狐 帖子:41 积分:332 威望:0 精华:0 注册:2023/2/23 17:14:00
  发帖心情 Post By:2024/4/28 15:26:00 [只看该作者]

不管选哪个文件、执行后都只新装了两条空白行 

 

Dim  dlg As New  OpenFileDialog '定义一个新的OpenFileDialog
 dlg.Filter=  "excel文件|*.xlsx" '设置筛选器
If dlg.ShowDialog =  DialogResult.Ok Then  '如果用户单击了确定按钮
Dim  Book As New XLS.Book(dlg.FileName)

'Dim  Book As New XLS.Book("D:\我的文件\Mylave\输出报表\三个系统低值易耗品台账\2024-04-28【三个系统低值易耗品】\行政办【三个系统低值易耗品】.xlsx")
 Dim  Sheet As XLS.Sheet = Book.Sheets(0)
Tables("国铁商城低值易耗品清单表").StopRedraw()
 '注意以下数组中列名称的顺序,必须和Excel表中的列顺序一致
Dim nms() As  String = {"序号","系统编号","订单号","商品名称","一级类目","售价","数量","售价小计","站段归属","申请站段","备注","采购单提交时间","使用站段","存放地点","保管人","低值易耗品备注"}
 '注意下面的循环变量从1开始,而不是从0开始,因为Excel表的第一行是标题
 For n As Integer = 4 To Sheet.Rows.Count -1
     Dim r As  Row = Tables("国铁商城低值易耗品清单表").AddNew()
     For  m As  Integer = 0 To nms.Length - 1
           r(nms(m)) = Sheet(n,m).Value
     Next
 Next


 Tables("国铁商城低值易耗品清单表").ResumeRedraw()

End If

 

 


此主题相关图片如下:微信图片_20240428152441.png
按此在新窗口浏览图片

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


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

做个例子发上来测试一下

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


加好友 发短信
等级:婴狐 帖子:41 积分:332 威望:0 精华:0 注册:2023/2/23 17:14:00
  发帖心情 Post By:2024/4/28 16:21:00 [只看该作者]

现在可以导进去啦、现在如果我想同时选择好几个文件;一起导进去、而不用选一个文件导进去后、再去选另外一个文件导进去。增加了【允许同时选择多个文件】、但是导进去还是只导了一个文件。该怎么改?

 

 

Dim  dlg As New  OpenFileDialog '定义一个新的OpenFileDialog
 dlg.Filter=  "excel文件|*.xlsx" '设置筛选器
dlg.MultiSelect = True  '允许选择多个文件
If dlg.ShowDialog =  DialogResult.Ok Then  '如果用户单击了确定按钮
Dim  Book As New XLS.Book(dlg.FileName)


 Dim  Sheet As XLS.Sheet = Book.Sheets(0)
Tables("国铁商城低值易耗品清单表").StopRedraw()
 '注意以下数组中列名称的顺序,必须和Excel表中的列顺序一致
Dim nms() As  String = {"序号","系统编号","订单号","商品名称","型号 ","单价","数量","金额","站段归属","申请站段","订单备注","领用时间","使用站段","存放地点","保管人","低值备注"}
 '注意下面的循环变量从1开始,而不是从0开始,因为Excel表的第一行是标题
 For n As Integer = 4 To Sheet.Rows.Count -1
     Dim r As  Row = Tables("国铁商城低值易耗品清单表").AddNew()
     For  m As  Integer = 0 To nms.Length - 1
           r(nms(m)) = Sheet(n,m).Value
     Next
 Next


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


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


 回到顶部
总数 21 1 2 3 下一页