我正在使用网络插件(Bloomberg)并且在宏中需要重新计算特定范围。但是,重要的是另一个范围不会重新计算(Bloomberg web插件),因为它会大大减慢PC的速度。仅仅在宏期间停止整体计算是不够的,它确实需要绑定到特定范围或工作表。
到目前为止,这是我的代码,但不起作用:
ActiveSheet.Unprotect
Range("M1:CV1556").Locked = False
Range("A13:K1556").Locked = True
ActiveSheet.Protect
可以使用以下解决方案:禁用所有Web插件,从而防止新数据下载,这是代码速度慢的原因。但是,我不知道如何在VBA中这样做。
答案 0 :(得分:1)
下面是一个示例,它将显示哪些AddIns可用,然后如何禁用它们。在对另一个范围执行更新之前,您可以使用它来禁用加载项。
Public Sub Addin_Test()
Dim myRow As Long
Dim objCOMAddin As Object
'Finding Add-Ins, adding to ActiveSheet
lngRow = 1
With ActiveSheet
For Each objCOMAddin In Application.COMAddIns
.Cells(lngRow, "A").Value = objCOMAddin.Description
.Cells(lngRow, "B").Value = objCOMAddin.Connect
.Cells(lngRow, "C").Value = objCOMAddin.progID
lngRow = lngRow + 1
Next objCOMAddin
End With
'How to disable an Add in?
Application.COMAddIns("Addin ProgID Goes here").Connect = False
End Sub