在当前范围内重复声明

我正在使用下面的代码来打开一个文件,将复制和粘贴数据,但是我得到一个编译错误

Duplicate declaration in current scope 

当它给出编译错误时,突出显示wb为工作簿行。

 Sub Test() Dim wb As Workbook Dim wksht As Worksheet Dim rng As Range Set wksht = Sheets("CBS001") Set rng = wksht.Range("A5") If Not IsEmpty(rng.Offset(1, 0)) Then Set rng = Range(rng.End(xlDown).Offset(0, 14), rng.Offset(1, 0)) Selection.Copy Set wb = Workbooks.Open(Filename:="H:\Finance\CBF\Invoices\Monthly Invoicing Summary\" & Format(Now, "yyyy") & "\ASM\" & Format(DateSerial(Year(Now), Month(Now) - 1, Day(Now)), "mmyy") & " ASM CBF Reg Summary.xlsx") wb.SaveAs Filename:="H:\Finance\CBF\Invoices\Monthly Invoicing Summary Test\" & Format(Now, "yyyy") & "\ASM\" & Format(Now, "mmyy") & " ASM CBF Reg Summary.xlsx" wb.Close End If End Sub 

问题在于vba从我的工作簿中的其他地方拿起相同的Dim,因此我使用的是更长,更准确的名称。

  Sub Test() Dim wbdestination As Workbook Dim wksdata As Worksheet Dim rngdestination As Range End Sub 

举些例子