请高手帮我编一个excel宏VBA程序

来源:百度知道 编辑:UC知道 时间:2024/04/29 22:39:41
先对一列数据排序,然后再对这列数据取2位小数,是真正的取两位小数,而不是四舍五入的取两位,因为四舍五入的取两位,在将对按四舍五入的数据排名后,如果遇到两位相同数据时,它不会把它排成并列,而是按照两位以后的不同数字排列,我想这个地方应该用round来取一下两位,然后再排名,如果遇到并列时,需排出并列,但后面的名次要连续,如果用rank是不行的,比如有两个第1名,用rank来排名的话,下面就没有报第二名,直接就是第3名了.这个地方应该先在D1(假如的)单元格中输入1,然后在D2(假如的)输入=if(c3=c2,d2+1,d1)
上面的几步,我能分步操作,但我想请excel宏高手,能不能用VBA帮我把上面的操作过程编个宏,让我按一下宏按钮就能解决问题了,谢谢了.
我的要求已经说得很清楚了,一个要我把问题说清楚,一个要我到他的论坛上,苦啊,不会VBA,竟然遭遇如此情况,另外说明一点,我没有分可以激励了,只有3分,没法激励.要激励都是5的倍数.

只要你能确切说出需求,编出来没问题.

取两位问题:
a=int(number*100)/100

排序问题,提示。把你要排的数写成一个array先,名次也给个array,
设两个if的循环就解决了。

这些问题都很简单,你应该自己动脑筋解决。