我不太確定爲什麼會出現這種情況,但似乎無法在線識別解決方案。我只是試圖將一些公式從一張表複製到另一張表中(公式將在目標表中爲.FillDown
),但我特別關注一個公式的問題。我相信這是因爲公式是一個數組,但即使當我使用.Range.FormulaArray
時,也會收到相同的#REF!
錯誤。以下是公式和轉移它的腳本:數組公式導致#REF錯誤
(注意:公式中的參考對目標工作表是準確的,而不是原始工作表 - 公式保留在指定工作表中,因爲所有關於目的地片被刪除時關閉工作簿以減小文件大小)
擬式
IF(LEFT(H2,1)="2","Platforms",INDEX('Units - Job Numbers'!$A$2:$A$200,SMALL(IF('Units - Job Numbers'!$B$2:$CO$200=I2,ROW('Units - Job Numbers'!$B$2:$CO$200)-ROW('Units - Job Numbers'!$B$2)+1),1)))
式轉印之後
=IF(LEFT(H2,1)="2","Platforms",INDEX('Units - Job Numbers'!#REF!,SMALL(IF('Units - Job Numbers'!#REF!=I2,ROW('Units - Job Numbers'!#REF!)-ROW('Units - Job Numbers'!#REF!)+1),1)))
VBA
'Copy and Extend Raw WIP Data Formulas
With ThisWorkbook.Worksheets("Raw WIP Data")
.Range("AE2:AL2").Formula = ThisWorkbook.Worksheets("Formulas").Range("A7:H7").Formula
.Range("AM2").Formula = ThisWorkbook.Worksheets("Formulas").Range("I7").Formula
.Range("AE2:AM" & WIPLastRow).FillDown
.Range("AE2:AM" & WIPLastRow).Copy
.Range("AE2:AM" & WIPLastRow).PasteSpecial xlPasteValues
Application.CutCopyMode = False
ActiveSheet.Cells(1, 1).Select
End With
當公式傳送到目的地片,所有在引用的 '單元 - 作業編號'片成爲#REF!
。奇怪的是,即使公式在執行宏之前是正確的,原始公式也有#REF!
錯誤。有什麼建議麼?
你可以在這裏發佈你的代碼嗎?你在單元格內獲得的公式是什麼? – ManishChristian
我不會包含我的整個腳本,因爲它非常冗長,除此之外,我沒有任何問題。從原始單傳輸後,我會包含該公式。 – CJK
你有一張名爲'Units - Job Numbers'的工作表嗎? – RBarryYoung