如何使用“CopyToRange”转换列中唯一的值列表

经过一番研究,我find了使用“pastespecial”转置的方法。 但是,我不认为这将适用于我,因为我正在使用副本范围以获得唯一的值。

下面的代码在将独特的值复制到工作簿中工作:

Sub GetComponents() ActiveSheet.Range("G2:G65536").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=ThisWorkbook.Worksheets("Sheet2").Range("A1"), Unique:=True End Sub 

但是,当我尝试转置失败

 Sub GetComponents() ActiveSheet.Range("G2:G65536").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=ThisWorkbook.Worksheets("Sheet2").Range("A1"), Unique:=True, Transpose:=True End Sub 

有没有办法让'CopyToRange'转置? 如果没有,我可以得到'粘贴特殊'来过滤唯一值?

提前致谢

我认为唯一的办法是分两步做:

 Sub GetComponents() ActiveSheet.Range("G2:G65536").AdvancedFilter Action:=xlFilterCopy, _ CopyToRange:=ThisWorkbook.Worksheets("Sheet2").Range("A1"), Unique:=True With ThisWorkbook.Worksheets("Sheet2") .Range(.Range("A1"), .Range("A1").End(xlDown)).Copy .Range("B1").PasteSpecial xlPasteValues, Transpose:=True .Columns("A").EntireColumn.Delete End With End Sub