禁用工作簿连接

时间:2011-10-20 23:49:23

标签: vba

我有一个Excel 2007 .xltm工作簿模板,其中包含多个与SQL Server的连接。我没有将xltm的目录列为可信位置,因此默认情况下禁用外部连接。这很有效,因为我有一些宏(签名和信任),稍后在使用Workbook_Open进行一系列输入后启用这些连接。

但是,我最近将该目录添加为受信任位置,现在连接自动刷新(无论Connection.ODBCConnection.RefreshOnFileOpen是否设置为False ..)

所以,我希望找到一个简单的命令,例如ActiveWorkbook.DisableConnections(因为有一个ActiveWorkbook.EnableConnections ...)

我所看到的只是只读ActiveWorkbook.ConnectionsDisabled ...如何将其设置为true?

1 个答案:

答案 0 :(得分:1)

想出来。我完成修改文件后运行以下功能,这可以防止模板自动刷新数据。

Private Sub DisableConnections()
    Dim conn As Object
    For Each conn In ActiveWorkbook.Connections
        conn.ODBCConnection.EnableRefresh = False
    Next
End Sub

根据我的设置,我可能会将ODBCConnection换成OLEDBConnection