Foxtable(狐表)用户栏目专家坐堂 → 数据合并怎么无效?


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

主题:数据合并怎么无效?

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


加好友 发短信
等级:小狐 帖子:369 积分:2911 威望:0 精华:0 注册:2009/4/1 12:51:00
数据合并怎么无效?  发帖心情 Post By:2010/4/2 14:01:00 [只看该作者]

控件代码如下
 Dim mg As New Merger
mg.SourcePath = "d:\fahuo\" '指定数据文件所在目录
mg.Format = "Delimited" '指定格式
mg.SourceTableName = "data" '指定要合并的文件,无需扩展名
mg.DataTableName = "发货清单明细" '指定接收数据的表
'mg.FieldMaps.Add("条形码","条形码") '将指定ID列的数据合并到编号列中
mg.Merge() '开始合并

点击控件后,只是增加空行,没有数据
用手工合并可以的。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:新建文件夹 (3).rar

开发者 密码 :admin
在发货清单明细表 的窗口
[此贴子已经被作者于2010-4-2 14:22:30编辑过]

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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33963 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/4/2 15:17:00 [只看该作者]

data.xlsx文件发上来

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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33963 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/4/2 15:19:00 [只看该作者]

测试没有任何问题。


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


加好友 发短信
等级:小狐 帖子:369 积分:2911 威望:0 精华:0 注册:2009/4/1 12:51:00
  发帖心情 Post By:2010/4/2 16:00:00 [只看该作者]

 事情比较复杂,本来是把文件写到data.txt,然后把这个文件(data.txt)合并到 发货清单明细表里,看一楼的代码,试了很多次都不行,就想换一个格式看能不能合并,把data.txt的格式换成xlsx,上传的就是这样的格式,但发现 写入公式writealltext只能是向文本文件写入,换成xlsx格式的路不行,所以还得是data.txt进行合并

但是用data.txt格式进行合并,只增加了空行,没有数据合并。麻烦高手把一楼代码拷到控件里 测试下,是什么原因,谢谢。

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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33963 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/4/2 16:16:00 [只看该作者]

这或许是老六的问题吧。
个人感觉,如果合并文本文件应该有指定分隔符的参数才对。
老六来看下。

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


加好友 发短信
等级:超级版主 帖子:485 积分:2996 威望:0 精华:10 注册:2008/9/12 14:37:00
  发帖心情 Post By:2010/4/2 16:21:00 [只看该作者]

是盖茨的问题,收藏此帖,以后看看能不能改进。


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


加好友 发短信
等级:小狐 帖子:369 积分:2911 威望:0 精华:0 注册:2009/4/1 12:51:00
  发帖心情 Post By:2010/4/2 16:42:00 [只看该作者]

一桶冷水,
不是有 mg.Format = "Delimited" 格式指定吗?手动也还是可以合并的啊!
有没有其他的办法,把文本文件的内容写入到表的某列里?
[此贴子已经被作者于2010-4-2 17:05:21编辑过]

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


加好友 发短信
等级:小狐 帖子:369 积分:2911 威望:0 精华:0 注册:2009/4/1 12:51:00
  发帖心情 Post By:2010/4/2 22:24:00 [只看该作者]

 狐爸改帮助吧
在一楼的代码里加入 mg.header=true 这样就可以合并了,帮助里都省略了
如果要多列合并的话,要把fieldmaps语句多写几次,一次一列
[此贴子已经被作者于2010-4-2 22:27:58编辑过]

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


加好友 发短信
等级:小狐 帖子:369 积分:2911 威望:0 精华:0 注册:2009/4/1 12:51:00
  发帖心情 Post By:2010/4/3 17:04:00 [只看该作者]

有些文本可以这样操作,有些文本不行,通过导入文本文件测试,会发现第1列的名称会自动改变,导致无法进行数据合并,第2列之后列名不会改变,可以合并。
现改变思路,先把文本文件导入到新表中,用cols(0)获取列名,然后用filler语句,不过指定数据来源列,不能用变量,狐爸有没有办法,或者可以对列名重命名。谢谢

dim n as string =tables("表d").cols(0).name
messagebox.show(n)
dim f As New Filler
f.SourceTable = DataTables("表d") '指定数据来源
f.SourceCols = "n" '指定数据来源列
f.DataTable = DataTables("发货清单明细") '指定数据接收表
f.DataCols = "第一列" '指定数据接收列
f.Fill() '填充数据

 回到顶部