0
這是代碼:Excel的VBA:範圍類的複製方法失敗
Dim rngReason As Range, rngDest As Variant
Set rngDest = wksRemoved.Range("A1").CurrentRegion
Set rngDest = rngDest.Cells(rngDest.Rows.Count + 1, 1)
Set rngReason = Range("A1").CurrentRegion
Set rngReason = rngReason.Columns(rngReason.Columns.Count).offset(0, 1)
Set rngReason = Intersect(rngReason, rngDupeRows)
rngReason.Cells.Value2 = "Duplicate " & strDedupeField
''Fails here with the error message:
'' Copy method of range class failed
rngDupeRows.Copy Destination:=rngDest
rngDupeRows
是一個範圍。在錯誤的時間rngDupeRows
和rngDest
地址的值是:
rngDest.Address "$A$2" Variant/String
rngDupeRows.Address "$3:$98301" String
代碼的目的是從一個工作簿複製行並將它們粘貼到另一個。我已經在不同的範圍上運行過多次,並且工作正常。
任何想法錯誤的原因可能是什麼?
你在哪裏定義rngDupeRows範圍分配每個單元格的值? – martin 2014-10-08 14:26:53
@馬丁未能聲明該變量應該引發424「Object Required」錯誤。忽略分配它應該引發91「對象變量或未設置塊」。 – 2014-10-08 14:35:46
您正在將整個行從3複製到98301,Excel可能會遇到此範圍大小的問題。你可以將rngDupeRows的地址更改爲特定列嗎? – Dave 2014-10-08 14:41:40