轻松更新 Excel 工作簿的外部链接的策略

轻松更新 Excel 工作簿的外部链接的策略

假设您有 2 个工作簿名称“PrivateWorkbook”和“PublicWorkbook”

PublicWorkbook 可供我们公司中的每个人使用。

PrivateWorkbook 仅供经理访问。

有从 PublicWorkbook 到 PrivateWorkBook 的外部链接。

当 PrivateWorkbook 更新时,PublicWorkbook 中的单元格应该反映这些变化。

但是,刷新 PublicWorkbook 链接的唯一方式是经理在编辑 PrivateWorkbook 后打开 Publicworkbook。

如果非经理首先打开PublicWorkbook,则无法刷新链接,因为他没有打开PRivateWorkbook的权限。

当经理编辑 Privateworkbook 时,有没有什么方法可以更新 PublicWorkbook,而不必强迫他们手动打开 publicworkbook?

答案1

使用 VBA 及其工作簿_关闭前在您的私人文件中设置事件,以自动打开、保存和关闭公共文件。当您的经理关闭私人文件时,将触发此事件。让经理通过简单的“是”或“否”提示来确认更新。

请注意UpdateLinks:=True,该参数会默默更新公共文件中的所有外部链接

示例代码(必须放在 ThisWorkbook 下)

Private Sub Workbook_BeforeClose(Cancel As Boolean)

    Dim wb As Workbook
    FilePath = "C:\public.xls"

    If MsgBox("Update " & FilePath & " ?", vbYesNo) = 6 Then
        Set wb = Workbooks.Open(FilePath, UpdateLinks:=True)
        wb.Close SaveChanges:=True
    End If

End Sub

相关内容