ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: fieldy

[求助]方程组求解和数据排序问题

[复制链接]

TA的精华主题

TA的得分主题

发表于 2005-4-18 15:50 | 显示全部楼层
以下是引用fieldy在2005-4-18 15:05:00的发言:

这就应该是15,12,9,2,1,14,11,8,7,6了

不管你数值是什么,只要你比另外一边的小,就应该靠后,(特别提醒的是数据必须大于0。应该就是0不参与排列)

还好我用到的一般只有一个最大值

你的这个结果有问题,既然12、9、2都比较完了,都应该在1的前面,则1及以前的数据(0 6 0 7 8 11 14 1)就应该按大小排序了

正确答案为:15 12 9 2 14 11 8 7 6 1 0 0

请楼主确认?!~

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-4-18 16:25 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

这就要正确理解“相邻”的含义了,首先你提取的应该是最大值15(这个值一般只有一个);然后往15的两边看,一个是1,一个是12,比较得出是12大,取12;再看12的两边,一个是1,一个是9(15已经取完了,不参与),取较大者9;再看9的两边,一个是1,一个是2(15和12都已经取完了,不参与),取2;再看2的两边,一个是1,另一边没数据了,可以看做是0,所以取1;再看1的两边,一个是14,另一边也没数据,取14;以后的就不用罗嗦了,一直取过去就是了

所以应该是15,12,9,2,1,14,11,8,7,6

TA的精华主题

TA的得分主题

发表于 2005-4-18 17:09 | 显示全部楼层

x2wvutPt.rar (11.32 KB, 下载次数: 5)

太难,我随着楼主的意思更改了几次代码,现在我都快晕了

不知楼主最后是不是这个意思,希望楼主多用一些数据进去试验

如果试验不对,请把数据都传上来,然后仔细说明

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-4-18 20:08 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

好象达到了预期效果哦,真是太感谢了。不愧是高手啊,你写的源程序我摸不着头脑,还得仔细去研究研究。

帮我写一下第一道题的VBA吧,这个应该简单点。

TA的精华主题

TA的得分主题

发表于 2005-4-19 10:01 | 显示全部楼层
以下是引用fieldy在2005-4-18 20:08:00的发言:

好象达到了预期效果哦,真是太感谢了。不愧是高手啊,你写的源程序我摸不着头脑,还得仔细去研究研究。

帮我写一下第一道题的VBA吧,这个应该简单点。

自己录一个宏

[c6]=[c4]-[c5] Range("C6").GoalSeek Goal:=0, ChangingCell:=Range("B4")

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-4-19 10:40 | 显示全部楼层

谢谢

[此贴子已经被作者于2005-6-1 15:22:27编辑过]

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-9-15 16:48 | 显示全部楼层
关于排序,还有一点未达到预期效果,就是等于0应该放最后(或不参与排序),请Long_III君解决,谢谢。 Vl5sp5G3.rar (10 KB, 下载次数: 4)

TA的精华主题

TA的得分主题

发表于 2005-9-15 17:01 | 显示全部楼层

这个自定义函数太复杂了,现在看代码我自己都会看晕

还有你的空和0,太多的话,建议多上传一些例子,便于琢磨规律,这一个例子根本不行

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-9-15 17:22 | 显示全部楼层

呵呵,真是辛苦Long_III君了。

我那上面的例子基本上可以了,就是中间出现几个0而已,甚至是前面5-6个单元格全是0,你只要把所有的0全放到最后就可以了。

TA的精华主题

TA的得分主题

发表于 2005-9-15 17:33 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
请测试 N1Ar0Dsk.rar (10.54 KB, 下载次数: 7)
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-9-24 17:19 , Processed in 0.040907 second(s), 6 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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