Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共8 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:Merger 合并Excel表名的问题

1楼
mr725 发表于:2010/7/17 23:02:00

下面试帮助中:

 

合并Excel文件:

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

一些Excel文件,可能需要在表名后加上符号$才能正常导入,例如:

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

 

请问: 有没有办法判断一下要合并的表 如果不是“订单” 就选择“订单$"  或者 跳过系统的提示~  


图片点击可在新窗口打开查看此主题相关图片如下:未命名.jpg
图片点击可在新窗口打开查看
2楼
czy 发表于:2010/7/17 23:33:00

这个不能判断吧。

不知道都加上$行不行(反正我的电脑一定得加,不然就出错)

3楼
czy 发表于:2010/7/17 23:38:00
从系统菜单的导入和合并来看,老六应该是可以让它能判断的,因为这两个功能的选择指定的表都带$符号。
4楼
mr725 发表于:2010/7/18 0:11:00

附件中两个excel文件, 销售管理.xls 有带$符合, 销售管理1.xls 就没有$这个符合......

 

Dim mg As New Merger
mg.SourcePath = "销售管理1.xls"
mg.Format = "excel"     '指定格式
mg.SourceTableName = "订单"    '指定要合并的表  不需加 $ 符合
mg.DataTableName = "订单"      '指定接收数据的表
mg.Merge() '开始合并

 

Dim mg As New Merger
mg.SourcePath = "销售管理.xls"
mg.Format = "excel" '指定格式
mg.SourceTableName = "订单$"    '指定要合并的表 必须加 $ 符号
mg.DataTableName = "订单"    '指定接收数据的表
mg.Merge() '开始合并

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:data.rar

 

 

5楼
czy 发表于:2010/7/18 1:28:00

问题是我们不能用代码获取Excel工作表带$符号的名称。

 

如下面两种方式返回的都是不带$符号的工作表名称:

 

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(ProjectPath & "销售管理.xls")
For Each Ws As MSExcel.WorkSheet In Wb.Sheets
    Output.Show(Ws.Name)
Next
App.Quit

 

 

 

Dim Book As New XLS.Book(ProjectPath & "销售管理.xls")
Dim Sheet As XLS.Sheet
For i As Integer = 0 To Book.Sheets.Count -1
    Output.Show(Book.Sheets(i).Name)
Next

6楼
狐狸爸爸 发表于:2010/7/18 9:34:00

建立一个Excel数据源,然后:

 

 

Dim lst As List(Of String)
lst = Connections("数据源名称").GetTableNames
For Each
nm As String In lst
    Output.Show(nm)

Next

[此贴子已经被作者于2010-7-18 9:34:35编辑过]
7楼
czy 发表于:2010/7/18 12:38:00
以下是引用狐狸爸爸在2010-7-18 9:34:00的发言:

建立一个Excel数据源,然后:

 

 

Dim lst As List(Of String)
lst = Connections("数据源名称").GetTableNames
For Each
nm As String In lst
    Output.Show(nm)

Next

[此贴子已经被作者于2010-7-18 9:34:35编辑过]

 

这方法可行。

8楼
mr725 发表于:2010/7/18 21:31:00

ok  有点迂回的感觉······

 

其实就是多了个系统提示,为何用 :

 

Try
   代码一
Catch ex As Exception
   代码二
End Try
代码三

 

也不能避免那个提示,

 

共8 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03125 s, 3 queries.