设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 7538|回复: 14

关于组合的问题。。

[复制链接]
发表于 2011-2-4 01:58:44 | 显示全部楼层 |阅读模式
本帖最后由 leslie0705 于 2011-2-4 02:06 编辑

大家新年好啊!
我想请教一个问题,在sheet1中有6个一行的数字,我要用组合选出2个数字,
就是说在sheet2中相对的行要列出其15种的组合。。
然后sheet3把sheet2的计算区域(B2:P24)按次数统计出来,按降序排列,然后把属于该次数的组合也列出来。因为可能组合比较多,所以sheet3的话最好能过了P列之后自动换行,在下行的B列继续。。
其实我只要sheet3就可以了,如果可以的话,那就直接用VBA编写出来就好了,但sheet1表中的列数是不变的(总是6列),行数无限,我需要sheet3按因为sheet1更新而更新。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

点击这里给我发消息

发表于 2011-2-4 17:46:23 | 显示全部楼层
姐姐,你是玩彩的吗~~~~~~~~~这样太折腾EXCEL了
发表于 2011-2-5 01:17:54 | 显示全部楼层
本帖最后由 roych 于 2011-2-5 01:50 编辑
pureshadow 发表于 2011-2-4 17:46
姐姐,你是玩彩的吗~~~~~~~~~这样太折腾EXCEL了

我比较同意小妖姐姐的看法~~不仅折腾Excel,我们这些老鸟都给蹂躏得近乎崩溃。。。尽管如此,本着人道主义,俺还是写了个实例传上来吧。

以下是一些说明,可看可不看:
1、这次是用Collection数据集来提取不重复值放在B列里,——记录集(Recordset)也可以实现,只是我懒得写14个Union SQL语句罢了。
     值得一提的是,这和你的附件格式不同,是因为出现一次的组合实在太多了,在同一行里放不下(2003版本只能放256列),——当然,如果你用的是2007版本,也许可以用数据透视表来处理,勾上打开时刷新之后,格式就一模一样了。
2、我在C列用了内置函数Countif来统计出现次数。——事实上,这并非高明的法子,定义好动态列,用名称来处理会更好些。不过既然你发在VBA模块里,小生姑且为之吧。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| 发表于 2011-2-5 07:08:30 | 显示全部楼层
首先谢谢2位大大,新年还上来工作,实在辛苦!
其次,小妖姐姐说对的,无论excel还是乐透,都是刚刚接触,不过我玩的是6选49的大乐透,中奖几率很低的,但我不在中国玩,希望几率会高一些。。。
然后,我还是自我介绍一下吧,我在读IT,其实excel之前有接触,无奈只学了皮毛,所以想升级一下,因为我就要参加工作了,excel对我来说是很有帮助的。所以我是学excel为重,但总得有个目标啊。。到现在为止其实我自己还没买过一期,反正自己选的号,命中率都很低。。6选49,1400W的几率啊。。。
最后,非常感谢ROY大大和小妖姐姐的帮忙。。或许我应该从头开始认真的学,但说实在的,小妖姐姐的视频我都看了,网上也有很多,这么看,不锻炼一下,真的没什么意思。。
嗯嗯,还过年呢,祝2位大大新年快乐!兔年行大运哈!
 楼主| 发表于 2011-2-5 07:11:58 | 显示全部楼层
本帖最后由 leslie0705 于 2011-2-5 07:15 编辑

其实有时候我也很郁闷,我用netbeans编过管理软件,Collection和Recordset在netbeans的用法我都会,我这学期还学了datenbank,SQL语句我也懂得,但怎么在excel在运用,真的不知道。。。
而且我也不是随便就发个问题,叫2位大大解决的。。我在网上找了很长时间,就好像这个问题,我找实例和自己弄都超过4小时了,实在不行才叫2位大大帮忙的。。

点击这里给我发消息

发表于 2011-2-5 11:32:22 | 显示全部楼层
从概率学的角度来说,无论怎么算,买彩票中奖的概率都是一样的,除非你把所有注都买下……
发表于 2011-2-5 11:32:57 | 显示全部楼层
Netbeans?听一个朋友说过,好像是Java的一个分支,不过他学的是J2EE。。
按我的学习经历,对于Excel,最多花三个月时间,应该可以学到中等水平了。——实际上,我那时候还在上三班(早中夜班),只是利用业余时间自学的,满打满算可能不足一个月。——当然,如果你的领悟力比较好,逻辑思维比较强的话,应该可以花更短的时间就能学得很好了。以下是个人以为的时间安排:

1、一个月时间学习函数,——当然要自己练习写公式的(如果不够熟练,则多花半个月)。需要说明的是,并非所有函数都要掌握,应该根据实际需要,有选择地学习。像我的话,就跳过了财务函数,因为用不上。。
2、一个月时间学习数组公式;数组公式可以说是普通公式的进化版,数组公式能完成的,普通公式也是可以处理的,只是可能需要多几个辅助列罢了。
3、剩下一个月时间则练习使用图表,特别是加上控件的高级图表。
4、VBA可以暂时放在一边,毕竟这是很个性化的东西,实际应用并不广。例如,我做的这个例子也只是针对你这个特定问题而已,实际工作中,并没有那么多东西一定要用到VBA。
发表于 2011-2-5 11:33:34 | 显示全部楼层
Netbeans?听一个朋友说过,好像是Java的一个分支,不过他学的是J2EE。。
按我的学习经历,对于Excel,最多花三个月时间,应该可以学到中等水平了。——实际上,我那时候还在上三班(早中夜班),只是利用业余时间自学的,满打满算可能不足一个月。——当然,如果你的领悟力比较好,逻辑思维比较强的话,应该可以花更短的时间就能学得很好了。以下是个人以为的时间安排:

1、一个月时间学习函数,——当然要自己练习写公式的(如果不够熟练,则多花半个月)。需要说明的是,并非所有函数都要掌握,应该根据实际需要,有选择地学习。像我的话,就跳过了财务函数,因为用不上。。
2、一个月时间学习数组公式;数组公式可以说是普通公式的进化版,数组公式能完成的,普通公式也是可以处理的,只是可能需要多几个辅助列罢了。
3、剩下一个月时间则练习使用图表,特别是加上控件的高级图表。
4、VBA可以暂时放在一边,毕竟这是很个性化的东西,实际应用并不广。例如,我做的这个例子也只是针对你这个特定问题而已,实际工作中,并没有那么多东西一定要用到VBA。

点击这里给我发消息

发表于 2011-2-5 19:18:53 | 显示全部楼层
ROY你太强了,我一个LOOKUP折腾了近两年,INDIRECT折腾了七八个月,OFFSET折腾了大半年,INDEX现在还在迷糊……
发表于 2011-2-6 13:37:11 | 显示全部楼层
坦白地说,我学得没有小妖姐姐那么精细。不过,话用说回来,如果不用到数组,特别是内存数组的话,这几个函数应该都不太难。
Lookup函数常常被我用来代替多重If判断(Lookup+常量数组或者单元格区域);有时当成Vlookup来用~~
Indirect唯一让我郁闷的是前面提到的单引号问题,我顶多加上Row函数作为内存数组以便返回几个工作表数据而已。没用过R1C1格式,——如果非要用到这个,毋宁定义动态列或者写VBA代码算了~~
Offset则往往被我用来定义动态列或者做二级下拉菜单,内存数组比较少用。——其实这个函数博大精深,如果结合了Mmult之类,则功能相当强大。算来我该感到惭愧,很少这样用。
Index嘛,的确很是让人头疼的一个函数,我常用的不外乎要么结合Match当Vlookup来用(特别是逆向查找时),要么结合Small、if、Match等函数用来做条件查询和列举不重复值(这两种方式当然不太一样)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-3-29 18:21 , Processed in 0.095492 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表