易表在线答疑技术与交流用户社区 → [求助]如何将有重名的列生成无重名的列


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

主题:[求助]如何将有重名的列生成无重名的列

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


加好友 发短信
等级:新手上路 帖子:2 积分:0 威望:0 精华:0 注册:2011/5/10 9:39:00
[求助]如何将有重名的列生成无重名的列  发帖心情 Post By:2011/5/10 9:47:00 [只看该作者]

我想把一列有很多重复名字的列生成另一个表中无重名字的列,如何将有重名的列生成无重名的列呢?有些类似框架模式的效果,但要求能直接生成另一列而且没有重名出现,不知道用什么函数,谢谢。

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


加好友 发短信
等级:业余侠客 帖子:362 积分:219 威望:0 精华:0 注册:2006/10/24 10:07:00
  发帖心情 Post By:2011/5/10 9:53:00 [只看该作者]

SelectFill函数
SelectFill可以从原始数据表指定列中提取分组数据填入到当前表的指定列中,可以一次填充多列,而且会自动排除重复内容。
SelectFill通常用在填充公式或者自定义按钮的命令公式中。

语法

SelectFill(SourceGrid,SourceCol,ReceiveCol,SourceCol,ReceiveCol....)

参数说明

SourceGrid   数据来源表,可以用表名表示,也可以用位置表示。
SourceCol    数据来源列,可以用列名称表示,也可以用列位置表示。
ReceiveCol   当前表中的某一列,用于接收SoueceGrid表中SourceCol列的数据,可以用列名称表示,也可以用列位置表示。
SourceCol和Receivecol可以有任意多组.


在默认情况下,SelectFill会自动删除当前表中的所有数据,然后从原始数据表中提取分组信息,填入到当前表中。
SelectFill函数通常用在填充公式中,在“表”菜单上单击“填充公式”即可设置填充公式,填充公式只会在重算全表的时候生效。

例子

SelectFill("订单表","产品","产品","客户","客户")

上述公式表示从订单表(第一个参数)的产品列(第二个参数)提取不重复的产品名称填入到当前表的产品列(第三个参数),从订单表的客户列(第四个参数)提取不重复的客户名称填入到当前表的客户列(第五个参数)。

选项
SelectFill函数有一个选项参数,大多数时候这个参数可以不设置,但是如果你希望SelectFill函数能够排除原始数据表的隐藏行,或者你希望SelectFill函数能够不删除当前表的现有数据,就用得着这个参数了,这个参数设为1,将排除原始数据表的隐藏行,设为2将不删除当前表的现有数据,设为3将排除原始数据表的隐藏行,而且不会删除当前表的现有数据。例如:

SelectFill("订单表","产品","产品","客户","客户",1)
该公式将排除订单表的隐藏行。

SelectFill("订单表","产品","产品","客户","客户",2)
该公式将保留当前表的现有数据

SelectFill("订单表","产品","产品","客户","客户",3)
该公式将排除订单表的隐藏行,同时保留当前表的现有数据。


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


加好友 发短信
等级:新手上路 帖子:2 积分:0 威望:0 精华:0 注册:2011/5/10 9:39:00
  发帖心情 Post By:2011/5/10 10:18:00 [只看该作者]

谢谢你,虽然运行时间比较长,但是在这个函数下,成功地解决我一个大问题,实在太爽了。

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


加好友 发短信
等级:超级版主 帖子:5115 积分:862 威望:0 精华:0 注册:2006/8/15 16:57:00
  发帖心情 Post By:2011/5/10 11:05:00 [只看该作者]

传下文件,看看有没有更好的解决方案!

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


加好友 发短信
等级:版主 帖子:4639 积分:133 威望:0 精华:0 注册:2006/9/23 19:23:00
  发帖心情 Post By:2011/5/10 11:59:00 [只看该作者]

假定:表1复制到表2
表1设置操作公式或按钮公式:

ClearGrid("表2") And CopyRows("表2") And DelReptRows("表2","姓名") And DelRow("表2",1)


 回到顶部