Foxtable(狐表)用户栏目专家坐堂 → 对批量导入excel,电子表格的文件名不一样,而且里面工作表的名称也不一样,请问这怎么导入


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

主题:对批量导入excel,电子表格的文件名不一样,而且里面工作表的名称也不一样,请问这怎么导入

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/8/17 11:04:00 [显示全部帖子]

文件名和表名称是否一样?

一样那么可以使用 FileSys.GetFiles 获取某个文件夹下的所有文件名 http://www.foxtable.com/help/topics/0341.htm



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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/8/17 11:11:00 [显示全部帖子]

获得所有文件名的集合 然后及循环集合 正常导入啊

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/8/17 11:20:00 [显示全部帖子]

For Each File As String In FileSys.GetFiles("C:\")
Dim fileName as String =File.SubString(File.LastIndexOf("\")+1,File.length-File.LastIndexOf("\")-1)
Dim ip as New Importer
ip.SourcePath = File '指定数据文件
ip
.SourceTableName = fileName.SubString(0,fileName.IndexOf(".")) '指定要的表
ip
.NewTableName =fileName.SubString(0,fileName.IndexOf(".")) '后的表名
ip.Format = "Excel
'指定格式
ip
.Import()
Next

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/8/17 11:27:00 [显示全部帖子]

那你就使用  Merger 啊 一样的 http://www.foxtable.com/help/topics/0685.htm

没有什么区别

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/8/17 16:26:00 [显示全部帖子]


    mg.SourceTableName = fileName.SubString(0,fileName.IndexOf(".")) & "$"  

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/8/17 16:30:00 [显示全部帖子]

你上个例子吧.

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/8/17 16:38:00 [显示全部帖子]

表和 项目例子都没看到图片点击可在新窗口打开查看

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/8/17 16:52:00 [显示全部帖子]

我不知道你是怎么做的,反正我按照上面楼的代码测试是没有问题的.


For Each File As String In FileSys.GetFiles("C:\Users\foxtable1\Desktop\55555\55555")
Dim fileName As String =File.SubString(File.LastIndexOf("\")+1,File.length-File.LastIndexOf("\")-1)
Dim mg As New Merger
    mg.SourcePath = File
    mg.Format = "excel" '指定格式
    mg.SourceTableName = fileName.SubString(0,fileName.IndexOf(".")) & "$"'指定要合并的表
    mg.DataTableName = "表A" '指定接收数据的表
    mg.Merge() '开始合并
Next

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/8/17 17:01:00 [显示全部帖子]

可能你列类型有问题.我是在命令窗口执行的.


图片点击可在新窗口打开查看此主题相关图片如下:123.gif
图片点击可在新窗口打开查看


 回到顶部