2013-10-02 60 views
0

如何从J列中获取每个数字,然后选择F列中的数字所在的行。 实施例:比较列的和选择行

  • 采取从J列(11123)
  • 搜索F列第一数目和选择所有的行的是第一个数字(11123)是值
  • 采取下一个数从J列(11124)
  • 搜索列F和添加到从先前的搜索选择的行,即包含数(11124)
  • 依此类推,直到柱的端Ĵ

enter image description here

我试试这个,但我得到错误:

Sub qTest() 

Sheets("Sheet1").Activate 
Dim fRNG As Range 
Dim aRNG As Range 

Set fRNG = Sheets("Sheet1").Range("F2", Sheets("Sheet1").Range("F2").End(xlDown)) 
Set aRNG = Sheets("Sheet1").Range("J2", Sheets("Sheet1").Range("J2").End(xlDown)) 

aRNG.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=fRNG, Unique:=False 

Dim aADD As String 
aADD = aRNG.SpecialCells(xlCellTypeVisible).Address 

aRNG.Parent.ShowAllData 

Range(aADD).EntireRow.Select 

End Sub 
+0

你的一块拼图会增加你选择的范围。这是一个[可靠的答案](http://stackoverflow.com/questions/10692213/excel-vba-how-to-extend-a-range-given-a-current-selection/10692557#10692557),这可能有助于那。 – jmstoker

+0

感谢您的建议..我尝试不同的方法,我发现,但没有...我在VBA不太好.. :-( –

+0

我很接近..但应用程序定义或对象定义的错误正在查杀我...... :-( –

回答

0

你需要达到的目标,我认为这是非常容易复制/剪切在J列中的数据(从J2到Jxxx)然后粘贴到列F的数据底部,然后在列F上执行数据排序。无需VBA代码!

+0

是的,但是,在col J中有1996个不同的邮政编码,而col F中有628790个号码 –

+0

@生活艺术所以需要将代码将Col J中的这些1996年邮政编码移动到Col F底部并调用As J排序排序吗?你需要在排序之前填写其他栏目Col G, – PatricK