我正在尝试将数据列从一张纸复制到一个只包含用于大型列表的匹配“ tickers”的空纸...一旦完成,我想删除所有重复项或不复制他们。
A)有人可以帮忙弄清楚设置“ Ticker”时出现错误的原因
B):删除重复项最有效的方法是什么?
Dim BottomRow As Long
Dim TopRow As Long
Dim col As Integer
Dim Ticker As String
Dim RngY As Range
TopRow = 6
For col = 4 To 3 + (2 * 26) Step 2
Ticker = .Cell(TopRow - 1, col - 3).Value
BottomRow = .Cells(.Rows.Count, col).End(xlUp).row
.Range(.Cells(TopRow, col), .Cells(BottomRow, col)).Copy
Worksheets("TSX-CleanDate").Activate
RngY = Worksheets("Source").Range("3A:3XFD").Find(Ticker, lookat:=xlPart)
.Cells(4, RngY).Paste
Next
答案 0 :(得分:1)
设置Ticker
时出现错误是因为您没有在代码中引用任何工作表。
Ticker = .Cell(TopRow - 1, col - 3).Value
该.Cell
部分仅在您的代码位于With
块中时才有效,但是由于并非如此,因此您需要像这样完全限定工作表(另外,您应该使用{{1 }},而不是Cells
)
Cell
关于B部分,请查看this answer。