我将列从一张纸复制到另一张表时遇到问题。在工作表的源代码中,某些单元格与公式集成,这些公式仅在打开工作簿时计算。因此,我最终从一个工作簿复制到另一个工作簿的结果是初始值。我已经尝试了一些解决方案,但它无法正常工作。
我的代码:
Application.Calculation = xlCalculationAutomatic
Set wb = Application.Workbooks.Open(FilePath, ReadOnly:=True, UpdateLinks:=0)
If Not Application.CalculationState = xlDone Then
DoEvents
End If
wb.Sheets("Unified").Columns("A").Copy activeWB.Sheets("report").Range("A1")
有关详细信息,请参阅源工作表中的单元格公式:
"=VLOOKUP(B649,'filesystem'!$A:$N,14,FALSE)"
我得到的结果是#REF!
答案 0 :(得分:1)
您正在复制公式,而不是结果。尝试
Set SourceRange = Intersect(wb.Sheets("Unified").Columns("A"), wb.Sheets("Unified").UsedRange)
Set TargetRange = activeWB.Sheets("report").Range("A1").Resize(SourceRange.Rows.Count,1)
TargetRange.Value = SourceRange.Value