VBA EXCEL更新另一个工作簿中的单元格而不打开工作簿

时间:2012-11-22 10:41:51

标签: excel vba

我有一个包含Workbooks列表的目录,我想循环遍历它们 withouth 打开它们并更新某个Sheet中的Cell

我尝试过使用

Dim wb As Workbook
Set wb = Workbooks("Z:\dir\bla.xls") 'THIS WILL COME TRHOUGH WHEN I LOOP 
Set ws2 = wb.Sheets("TestSheet") 'SHEET NAME

Set CurCell_2 = ws2.Range("A1")
CurCell_2.Value = 5

问题来了,它只有在我已经打开工作簿时才有效。我可以用:

Workbooks.Open

然后它在后台打开并需要很长时间才能完成所有操作。

任何人都可以帮忙吗

1 个答案:

答案 0 :(得分:2)

如果不打开工作簿,就无法做到这一点。但是,我发现在我的情况下使用Application.EnableEvents并将其设置为false大大加快了进程,因为我们在工作簿打开事件上有宏。