我有兩個工作簿。將行中的每個值複製到值匹配的另一個工作簿中?
工作簿
Supplier Name Date
Supplier A Jun-17
Supplier B Jun-17
Supplier C May-17
工作簿乙
Supplier Name
Supplier A
Supplier B
我試圖複製他們的日期Apr-17匹配所有供應商的名稱。 Jun-17寫在單元格B1中名爲(資產)的表單上。
我得到一個錯誤
Object doesn't support this property or method.
在此行中:
If ThisWorkbook.Worksheets(1).Format(Range("O" & j).Value, "mmm") = ThisWorkbook.Worksheets("assets").Range("b1").Value Then
我的代碼:
Sub Monthly()
On Error Resume Next
UserForm1.Show
If Format(Range("O211").Value, "mmm") = Worksheets("assets").Range("b1").Value Then
MsgBox "Yes"
End If
Dim WB As Workbook
On Error Resume Next
Set WB = Workbooks("PAI Monthly Audits.xlsx")
On Error GoTo 0
If WB Is Nothing Then
Set WB = Workbooks.Open("G:\QUALITY ASSURANCE\03_AUDITS\PAI\templates\PAI Monthly Audits.xlsx", UpdateLinks:=False)
End If
With ThisWorkbook.ActiveSheet
LastRow = .Cells(.Rows.Count, "B").End(xlUp).Row
j = 6
For i = 2 To LastRow
If ThisWorkbook.Worksheets(1).Format(Range("O" & j).Value, "mmm") = ThisWorkbook.Worksheets("assets").Range("b1").Value Then
.Range("B" & i).Value = ThisWorkbook.Worksheets(1).Range("B" & j).Value
j = j + 1
End If
Next i
End With
End Sub
請能有人告訴我我要去哪裏錯了嗎?
題外話題:'On Error Resume Next'可以讓調試成爲一項難以置信的難題。發生這種情況是因爲它隱藏了你的錯誤。考慮在測試過程中對此進行評論,並且如果可能的話,重構代碼以捕獲錯誤,而不是壓制錯誤。 –