excel自动筛选后分别复制粘贴到新文件的解决办法

时间:2024-02-23 18:22:36

 面对着一张包含全省数据的Excel表格,我们常常需要按其中某一列的数据通过自动筛选归类,然后以归类的名字新建Excel并将筛选的结果粘贴到新表中。

    自动筛选后直接复制粘贴是会把数据全部粘到新表中的的,一行行用鼠标拖更加麻烦,一个简单方法是点击菜单栏:编辑->定位->定位条件->当前区域,然后ctrl+c,再ctrl+v。

    自己试验了一下宏并改了一下VBA,无奈selection.copy之后想在新表中paste怎么也不成功,还是放弃了。

    下面改用python来完成此功能,代码非常的短。

    autofilter.py

f=open(\'.\\candidates.txt\',\'r\')
line = f.readline()
index=1
while line:
    m=line.split()
    f2=open(\'.\\\'+m[index]+\'.txt\',\'a\')
    f2.write(line)
    line = f.readline()
f.close()
    index用来选择筛选的列,split()去掉tab分隔符并转换为list。
    需要注意:

    有的时候把表格中的内容复制到记事本里会出现" 广东省分行广州越秀支行"或者"安徽省分行 宣城分行"的情况,莫名的出现一些在excel中不会显示和打印的字符,这样的表格在进行各种表格操作时会遇到麻烦,一个简单的方法是使用clean(text)处理一下,就可以去掉文本的引号和空格了。