请大神帮忙编写excel宏程序,将某列不同内容分别复制到不同的新工作表,再以另一列内容排序。

由于我导出的数据量很大,所以需要编这么个宏程序,不知道能不能实现。请帮忙!!!!
下面我用实例说明下怎么个意思,也请大家帮忙以这个例子就行编宏就可以。图中表格为工作表sheet1,整个excel工作簿里,初始状态也就一个sheet1。
图中A列有N个省份,我需要按照A列“省份”的个数,新建相同个数的工作表,然后把每个省份的整行内容复制到到新建的工作表,最后安装B列的内容排序。(N的值可能不确定,如果能程序自动找出A列不同内容的种类数量,也就是N的值,当然最好,如果不能大家就当它是个固定值也行,我如果描述错了,求大家略过-^-),反正最终结果就是用宏自动把重庆的3行、海南的3行、北京的2行内容分别复制到一个新的工作表里。【选定重庆、海南、北京的所有内容,是不是可以用筛选?】财富不多总共就26,最多只能标20,请大家谅解。
jjdsjeff帮忙建议的数据透视表,没整成功,主要是那个分页好像只是分页显示(也有可能是我还没学会),我需要的是每一个省份的内容单独被复制到一个工作表中。还是请哪位高手帮忙整个vba编程的吧,小弟谢谢了,急用啊!!!!!!!!
---------------另外,我搜索到了另外一个帖子,那位兄弟提出的问题好像跟我基本一样,但下面那个答案的编程我在excel里面F5运行时,提示“下标越界”,具体公式是这样的(也可以去那个帖子看 帖子名是“excel如何逐行分类扫描数据并复制到另一个工作表中”,网址太长,字符太多没法复制)
原数据表名命名为“数据源"
代码如下
sub test ()
dim arr,x&,i&,y&
arr=sheets("数据源").usedrange
for x=1 to ubound(arr)
with sheets(arr(x,1))
i=.range("A65536").end(xlup).row+1
for y=1 to ubound(arr,2)
.cells(i,y)=arr(x,y)
next y
end with
next x
end sub

这个,不用宏也能做到,用数据透视表也能按省份自动分成独立的工作表。追问

不太会用,能帮忙教一下吗,主要是要分到不同的新工作表里去怎么弄

追答

 

授人以鱼不如授人以渔。

虽然此方法没有VBA那么直接,但是至少能让不懂VBA的同学自己实现基本的要求。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-06-03
B列如何排序?赵钱孙....追问

简单的升降序列就可以

相似回答