VBA编译错误:“预期:语句结尾”-(在不同的工作表之间工作)

时间:2019-08-31 13:14:33

标签: excel vba

我有一个包含两个工作表的工作簿。我编写了以下代码,以便将工作表1中的H列的唯一值复制并排序到工作表2中,从A3开始。

Sub SortUniqueValues1()

Dim i As Variant
Dim j As Variant

j = Application.Transpose Sheets("Sheet 1").Range("H2", .Range("H" & Rows.Count).End(xlUp)))

With CreateObject("Scripting.Dictionary")
    For Each i In j
        .Item(i) = i
    Next
 Cells(3, 1).Resize(.Count) = Application.Transpose(.Keys)
End With

End Sub

我继续收到“ expected:statement end error”。我相信它必须与这部分有关:

j = Application.Transpose Sheets("Sheet 1").Range("H2", .Range("H" & Rows.Count).End(xlUp)))

有什么想法吗?

提前谢谢

1 个答案:

答案 0 :(得分:1)

尝试修改

j = Application.Transpose Sheets("Sheet 1").Range("H2", .Range("H" & Rows.Count).End(xlUp)))

收件人:

With Sheets("Sheet 1")
    j = Application.Transpose(.Range("H2", .Range("H" & Rows.Count).End(xlUp)))
End With

,您确定工作表的名称是“ Sheet 1”而不是“ Sheet1”吗?