Режим редактирования захвата путем проверки стандартной панели инструментов - PullRequest
1 голос
/ 19 марта 2010

Я использую этот код, чтобы проверить, отключена ли стандартная панель инструментов в режиме редактирования.

CommandBarControl oNewMenu = Application.CommandBars("Worksheet Menu Bar").FindControl(1, 18, 1, True, True)

If (IsNull(oNewMenu)) Then

    MsgBox "Edit mode enabled"

End If

Функция FindControl выдает ошибку. Есть ли конфликт в параметрах?

1 Ответ

0 голосов
/ 23 марта 2010

Я запутался, потому что первое утверждение никогда не скомпилируется. Более того, при оценке существования объекта следует использовать «Ничего» вместо «IsNull». В любом случае попробуйте это:


Const CTRL_NEW = 2520

Dim oControl As CommandBarControl

Set oControl = CommandBars("Standard").FindControl(Id:=CTRL_NEW)

If Not oControl Is Nothing Then ' Control New is present in Standard bar'
    MsgBox "Edit mode " & IIf(oControl.Enabled, "enabled", "disabled"), vbInformation
End If
...