Foxtable(狐表)用户栏目专家坐堂 → 两种合并方式,结果为什么不同?


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

主题:两种合并方式,结果为什么不同?

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


加好友 发短信
等级:小狐 帖子:314 积分:2412 威望:0 精华:0 注册:2013/9/29 20:41:00
两种合并方式,结果为什么不同?  发帖心情 Post By:2016/2/16 21:44:00 [只看该作者]

 方法一:在系统菜单中“杂项”高速合并EXCEL文件,是能够实现的。

方法二:在窗口按钮代码如下:

Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter= "excel文件|*.xls" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
    Dim mg As New Merger
    mg.SourcePath = dlg.FileName
    mg.SourceTableName = "积分数据20160125$"
    mg.DataTableName = "储蓄积分"
    mg.Merge()
End If

 

执行该代码出现错误:.NET Framework 版本:2.0.50727.5485
Foxtable 版本:2014.11.11.1
错误所在事件:
详细错误信息:
不可识别的数据库格式 'D:\积分数据20160125.xls'


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/16 22:03:00 [只看该作者]

加上代码

 

 mg.Format = "Excel"

 

-----------------------------------------------

 

Dim mg As New Merger
mg
.SourcePath = "c:\data\销售管理.xls"
mg
.Format = "excel" '指定格式
mg
.SourceTableName = "订单" '指定要合并的表
mg
.DataTableName = "订单" '指定接收数据的表
mg
.Merge() '开始合并


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


加好友 发短信
等级:小狐 帖子:314 积分:2412 威望:0 精华:0 注册:2013/9/29 20:41:00
  发帖心情 Post By:2016/2/16 22:22:00 [只看该作者]

 我用的是打开对话框选择要合并的文件,在选择文件对话框打开后,没有出现我要导入的Excel文件,但是出现了97-2003的工作表。

 

可见可能是EXCEL版本问题,是这样吗?


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/16 22:33:00 [只看该作者]

Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter= "excel文件|*.xls;*.xlsx" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
    Dim mg As New Merger
    mg.SourcePath = dlg.FileName
    mg.SourceTableName = "积分数据20160125$"
    mg.DataTableName = "储蓄积分"

    mg.Format = "Excel"
    mg.Merge()
End If


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


加好友 发短信
等级:小狐 帖子:314 积分:2412 威望:0 精华:0 注册:2013/9/29 20:41:00
  发帖心情 Post By:2016/2/16 22:44:00 [只看该作者]

 出现以下提示:“青年路积分数据20160125$”不是一个有效名称。请确认它不包含无效的字符或标点,且名称不太长。

 

但是在系统菜单中操作没有这个提示。不过,在打开文件对话框中出现了要合并的EXCEL文件了。

[此贴子已经被作者于2016/2/16 22:45:06编辑过]

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/17 0:05:00 [只看该作者]

Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter= "excel文件|*.xls;*.xlsx" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
    Dim mg As New Merger
    mg.SourcePath = dlg.FileName
    Dim book As new XLS.Book(dlg.FileName)
    mg.SourceTableName = book.Sheets(0).Name & "$"
    mg.DataTableName = "储蓄积分"
   
    mg.Format = "Excel"
    mg.Merge()
End If

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


加好友 发短信
等级:小狐 帖子:314 积分:2412 威望:0 精华:0 注册:2013/9/29 20:41:00
  发帖心情 Post By:2016/2/19 21:30:00 [只看该作者]

对了,什么原因呢?


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/2/20 1:29:00 [只看该作者]

以下是引用ahbrq在2016/2/19 21:30:00的发言:

对了,什么原因呢?

 

你每个excel文件里面的表的名称都不一样导致的。


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


加好友 发短信
等级:小狐 帖子:314 积分:2412 威望:0 精华:0 注册:2013/9/29 20:41:00
  发帖心情 Post By:2016/3/21 21:08:00 [只看该作者]

用6楼代码出现以下错误,什么原因?
图片点击可在新窗口打开查看此主题相关图片如下:导入数据出错.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2016/3/21 21:35:00 [只看该作者]

是不是你表名写错了啊

 

mg.DataTableName = "储蓄积分"


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