【发布时间】:2016-02-25 03:52:55
【问题描述】:
我在使用直接参考时遇到了问题。我试图在不使用选择或激活的情况下将值放入根工作簿。但是,如果需要将数据复制到的工作表未处于活动状态,我的代码会出错。如果工作表处于活动状态,则代码可以正常工作...
这是我的代码
Workbooks(root).Activate
Dim wb As Workbook
Set wb = Application.Workbooks(root)
wb.Sheets("d_eff_stress").Cells(1, n).Value = filename
wb.Sheets("d_eff_stress").Range(Cells(3, n), Cells(100, n)).Value = varray1
wb.Sheets("eff_stress").Cells(1, n).Value = filename
wb.Sheets("eff_stress").Range(Cells(3, n), Cells(100, n)).Value = varray2
解决方案:完全引用范围...我早就知道了
Workbooks(root).Activate
Dim wb As Workbook
Set wb = Application.Workbooks(root)
wb.Sheets("d_eff_stress").Cells(1, n).Value = filename
wb.Sheets("d_eff_stress").Range(wb.Sheets("d_eff_stress").Cells(3, n), wb.Sheets("d_eff_stress").Cells(100, n)).Value = varray1
wb.Sheets("eff_stress").Cells(1, n).Value = filename
wb.Sheets("eff_stress").Range(wb.Sheets("eff_stress").Cells(3, n), wb.Sheets("eff_stress").Cells(100, n)).Value = varray2
【问题讨论】:
-
检查
root持有正确的书。 -
不要将解决方案放在问题中,因为它会使答案看起来不需要。您可以通过单击答案旁边的灰绿色复选标记来标记正确答案。但是你必须从提出问题的时间开始等待 15 分钟。所以请过几分钟再回来,将答案标记为正确。
标签: excel vba select reference