我有一个包含多个地址行的大型Excel电子表格。其中许多地址行包含重复的邮政编码,具有不同的steet地址。
我需要将每个重复项分离到不同的spreadhseets,以便没有一个spreadhseet包含相同的邮政编码。我目前正在使用= if()语句来识别重复项,然后进行剪切和描述,并重复几乎无限制地将它们全部拼出来
作为一个例子:
address 1 postcode 1
address 2 postcode 1
address 3 postcode 1
address 4 postcode 2
address 5 postcode 2
address 6 postcode 3
address 7 postcode 3
address 8 postcode 3
address 9 postcode 3
会提供4个电子表格:
1)
address 1 postcode 1
address 4 postcode 2
address 6 postcode 3
2)
address 2 postcode 1
address 5 postcode 2
address 7 postcode 3
等
有关vb脚本的任何提示吗?
非常感谢
尼克
答案 0 :(得分:2)
如果这是一次性的事情,那么我会考虑在工作表中进行批量剪切粘贴。我会尝试这样的事情:
假设我在G列中有1到5之间的20个值。我将以下公式放在H1中:
=SUM(IF(G1:$G$20=G1,1,0))
...和(重要位)使用 Control + Shift + Enter 将其作为数组公式输入。现在我将该公式复制下来(为了速度,双击单元格右下角的“填充句柄”)。这是我的结果:
1 2
1 1
2 2
2 1
3 8
3 7
3 6
3 5
3 4
3 3
3 2
3 1
4 2
4 1
5 6
5 5
5 4
5 3
5 2
5 1
现在我可以复制列H和编辑...粘贴特殊...值来修复值。按H排序得到这个:
1 1
2 1
3 1
4 1
5 1
1 2
2 2
3 2
4 2
5 2
3 3
5 3
3 4
5 4
3 5
5 5
3 6
5 6
3 7
3 8
现在我有一些记录要复制到我现在知道需要的8张纸中。
当然,如果你要做很多事情,那么宏会很有用。它不需要比自动化上述内容复杂得多。