l行10O列的exceL表中,vba单元格填充颜色的o到9的自然数(有重复),求重复次数最大的数,用vBA编程。如

利用EXCEL VBA 分配A4单元格的数据到下表B列中,按行分配,先分配满足前面的,不允许超过A列数据_百度知道怎样在Excel中用VBA得到有效行数???
[问题点数:50分,结帖人badboy168]
怎样在Excel中用VBA得到有效行数???
[问题点数:50分,结帖人badboy168]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
2005年9月 荣获微软MVP称号2008年10月 荣获微软MVP称号2007年10月 荣获微软MVP称号2006年10月 荣获微软MVP称号2004年9月 荣获微软MVP称号2003年9月 荣获微软MVP称号2002年9月 荣获微软MVP称号
2005年7月 VB大版内专家分月排行榜第一2005年6月 VB大版内专家分月排行榜第一2001年5月 VB大版内专家分月排行榜第一2001年4月 VB大版内专家分月排行榜第一2001年3月 VB大版内专家分月排行榜第一
本帖子已过去太久远了,不再提供回复功能。查看: 658|回复: 10
10行数,首位数保证1-9能出现1次,末尾数0出现不能多于2次
阅读权限20
在线时间 小时
本帖最后由 ljpmqb888 于
13:12 编辑
如题:具体看附件
(3.24 KB, 下载次数: 18)
11:00 上传
点击文件名下载附件
,原则和规则:
数据规则& && && && && && && && && &
1、每题共50个字码,排列成4个四位数,2个五位数、4个六位数,随机分布排列,但纵向相邻行不能重复同一种数位,合计10行数据。& && && && && && && && && &
2、在10行数中,每行数据的开头数字中保证1-9分别出现一次。不能出现0。& && && && && && && && && &
3、在10行数中,末尾数字限制数字0的出现次数不能大于2次& && && && && && && && && &
4、排列的数码要求纵向和横向相邻的数都不能重复。同一笔数中的数字也不能重复。即不能出现381895这样的数。& && && && && && && && && &
5、每题先准备50个字码(0-9数码各5个),相邻两组互换一个不同的数字后再按照前面的规则排列:比如现在例题中的“三一”题就是“9”出现6次,“2”出现4次;其余数字都是平均出现5次。而相邻的“三二”题则是“2”出现6次,“9”出现4次,其余数平均出现5次。以此类推。并且10道题完成时,互换的数也不重复,即:0-9每个数都换过。& && && && && && && && && &
6、第4题、五题、第九题、十题要添加3笔减号,分别出现在四位数1次,五位数1次,六位数1次。& && && && && && && && && &
请高手给看看怎么好解决,或提供算法和思路,可以函数配合VBA,也可以纯VBA。谢谢!!
阅读权限20
在线时间 小时
& & & & & & & &
感谢论坛wangjguo44老师和各位好友们的支持与帮助!!既然不能完全用函数来解决,看来只能VBA能够解决。想请教一个问题:这个数据的排序可不可以这样:
先准备好50个数码(0-9),再按规则相邻两组互换一个数。此时数据库准备完毕。
算出排列成4个四位数,2个五位数、4个六位数,随机分布排列的情况,可以参考这个贴中的香川群子老师给写的代码
然后纵向生成1-9并随机乱序,来排列首位数字,(先用1-9各一次,此时是9行,少一行的首位,再随机挑选一个不是0的数排列至10行),
把剩余的数码 按照规则排列分布到剩余的位置,并做个Do.........Loop的循环判断,即当尾数0的出现次数大于2时从新执行剩余数码的排序分布,直至不大于2为止。
最后处理第四题、五题、九题、十题减号的位置问题。至此全部完毕。
不知道我这个思路是不是正确?可是中间的一些过程我不会写,请老师们给指点帮助,谢谢!!
阅读权限20
在线时间 小时
期待老师们给出思路和意见!!
阅读权限95
在线时间 小时
期待老师们给出思路和意见!!
找香川群子老师。
谢谢老师!!
阅读权限90
在线时间 小时
慢是慢点,但能用了。
16:46 上传
点击文件名下载附件
28.83 KB, 下载次数: 8
阅读权限20
在线时间 小时
慢是慢点,但能用了。
辛苦您了,休息日帮我弄,我看看!!
阅读权限20
在线时间 小时
非常完美!!所有条件均达到!!这个而且应该有通用性是吧?!!我找时间好好看看,辛苦您了!好好休息休息吧!有问题我再找您!!再次感谢您!!
阅读权限90
在线时间 小时
非常完美!!所有条件均达到!!这个而且应该有通用性是吧?!!我找时间好好看看,辛苦您了!好好休息休息 ...
应该说是具有一定的通用性,还不能完全通用。
阅读权限90
在线时间 小时
代码自己改的不错。新添了一个常量,控制是否需要相邻两笔交换数字
12:29 上传
点击文件名下载附件
27.66 KB, 下载次数: 8
给老师点赞,和本帖无关
阅读权限90
在线时间 小时
最新的跟通用的 每组十个数 的题目生成器, 需要更改用途时,改变模块顶部的常量定义即可。
ps:本来想贴上代码,结果超过帖子允许的长度了。。。。。
20:44 上传
点击文件名下载附件
30.51 KB, 下载次数: 4
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师Excel表格录入新的数据后自动删除重复的旧数据行,只在一个工作簿的指定的一个工作表起作用,求VBA代码_百度知道查看: 545|回复: 4
阅读权限13UID476653函数0 关最后登录经验3792 点在线时间798 小时VBA0 关分享记录好友技巧0 关相册主题段位0 段金币3132 个积分3792精华0帖子日志注册时间
高中1年级, 积分 3792, 距离下一级还需 308 积分
金币3132 个积分3792帖子
本帖最后由 武林长风 于
17:20 编辑
(2.93 KB, 下载次数: 30)
22:16 上传
点击文件名下载附件
阅读权限255UID615924函数0 关最后登录经验74 点在线时间1692 小时VBA0 关分享记录好友技巧0 关相册主题段位0 段金币2793 个积分74精华0帖子日志注册时间
金币2793 个积分74帖子
心正意诚身修发布于
=SUM(1/(COUNTIF(姓名!A2:D55,姓名!A2:D55)))-1
-1是为了把那个0去掉。
阅读权限255UID615924函数0 关最后登录经验74 点在线时间1692 小时VBA0 关分享记录好友技巧0 关相册主题段位0 段金币2793 个积分74精华0帖子日志注册时间
金币2793 个积分74帖子
&&&本楼为最佳答案&&&
=SUM(1/(COUNTIF(姓名!A2:D55,姓名!A2:D55)))-1
-1是为了把那个0去掉。
&谢谢你最先回答1&
我和小伙伴都惊呆了
总评分:&经验 + 12&
如果有不足之處,敬請各位老師指出.謝謝
阅读权限27UID668910函数1 关最后登录经验88545 点在线时间3672 小时VBA0 关分享记录好友技巧0 关相册主题段位0 段金币16035 个积分88545精华0帖子日志注册时间
excel专家, 积分 88545, 距离下一级还需 11455 积分
金币16035 个积分88545帖子
22:58 上传
点击文件名下载附件
6.99 KB, 下载次数: 17
总评分:&经验 + 9&
阅读权限13UID799627函数0 关最后登录经验3783 点在线时间420 小时VBA0 关分享记录好友技巧0 关相册主题段位3 段金币3245 个积分3783精华0帖子日志注册时间
高中1年级, 积分 3783, 距离下一级还需 317 积分
金币3245 个积分3783帖子
正准备回复时,看见楼上高人更精短的答案,本着百花齐放的自由原则,还是将我的答案摆上
=SUM(IF($A$2:$D$55=0,&&,IF(COUNTIF($A$2:$D$55,$A$2:$D$55)&1,1/COUNTIF($A$2:$D$55,$A$2:$D$55),1)))
大神都是这么谦虚 。
总评分:&经验 + 27&
阅读权限13UID761438函数0 关最后登录经验3909 点在线时间548 小时VBA0 关分享记录好友技巧0 关相册主题段位0 段金币1496 个积分3909精华0帖子日志注册时间
高中1年级, 积分 3909, 距离下一级还需 191 积分
金币1496 个积分3909帖子
不懂,进来学习一下
最佳答案累计大于500
Powered by

我要回帖

更多关于 vba编程实例 的文章

 

随机推荐