Имею такой код... почемуто с надстройкой не открываются документы, Ехел грузиться с панелью инструментов, а сам документ не отображается=(
в чем может быть проблема?
Private Sub Workbook_Open()
ФормированиеПанелиИнструментов
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
Application.CommandBars("VTB").Delete
End Sub
Sub ФормированиеПанелиИнструментов()
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
'Application.CommandBars.Add(Name:="VTB").Visible = True
Set x = Application.CommandBars.Add("VTB", msoBarTop)
x.Visible = True
x.Controls.Add(msoControlPopup).Caption = "addclient"
For i = 1 To 1000: DoEvents: Next
Set ShapesCB = Application.CommandBars("VTB")
For Each co In ShapesCB.Controls: co.Delete: Next
ShapesCB.Visible = True
ShapesCB.Controls(1).BeginGroup = True
If ShapesCB.Controls.Count = 0 Then Add_Control_Ex ShapesCB, 1, 354, "СформироватьПисьмаКлиентам", "Сформировать Письма Клиентам", True
Add_Control_Ex ShapesCB, 1, 2148, "СформироватьДокуметыДепозитыМБ", "Сформировать Депозиты", True
Add_Control_Ex ShapesCB, 1, 213, "ДобавитьСтроки", "Добавить Строки", True
Add_Control_Ex ShapesCB, 1, 2141, "СформироватьДокументыИП", "Сформировать документы ИП", False
Add_Control_Ex ShapesCB, 1, 52, "СформироватьДокументыЮрЛиц", "Сформировать документы ЮрЛиц", False
Add_Control_Ex ShapesCB, 1, 19, "СформироватьДоговоры", "Сформировать Договоры", False
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
Function Add_Control_Ex(ByRef menu, ByVal B_Type As Integer, ByVal B_Face As Integer, _
ByVal On_Action As String, ByVal B_Caption As String, Optional ByVal Begin_Group As Boolean = False, Optional Tag As String = "") As CommandBarControl
' добавляет контролы в меню menu ' type=1 - это кнопка, type=4 - это комбобокс, 10 - popup
On Error Resume Next
Set Add_Control_Ex = menu.Controls.Add(B_Type, , , 1)
With Add_Control_Ex
If B_Face > 0 Then .FaceId = B_Face:
.Tag = Tag: .OnAction = On_Action: .Caption = B_Caption: If Begin_Group Then .BeginGroup = True
End With
End Function
в чем может быть проблема?
Private Sub Workbook_Open()
ФормированиеПанелиИнструментов
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
On Error Resume Next
Application.CommandBars("VTB").Delete
End Sub
Sub ФормированиеПанелиИнструментов()
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
'Application.CommandBars.Add(Name:="VTB").Visible = True
Set x = Application.CommandBars.Add("VTB", msoBarTop)
x.Visible = True
x.Controls.Add(msoControlPopup).Caption = "addclient"
For i = 1 To 1000: DoEvents: Next
Set ShapesCB = Application.CommandBars("VTB")
For Each co In ShapesCB.Controls: co.Delete: Next
ShapesCB.Visible = True
ShapesCB.Controls(1).BeginGroup = True
If ShapesCB.Controls.Count = 0 Then Add_Control_Ex ShapesCB, 1, 354, "СформироватьПисьмаКлиентам", "Сформировать Письма Клиентам", True
Add_Control_Ex ShapesCB, 1, 2148, "СформироватьДокуметыДепозитыМБ", "Сформировать Депозиты", True
Add_Control_Ex ShapesCB, 1, 213, "ДобавитьСтроки", "Добавить Строки", True
Add_Control_Ex ShapesCB, 1, 2141, "СформироватьДокументыИП", "Сформировать документы ИП", False
Add_Control_Ex ShapesCB, 1, 52, "СформироватьДокументыЮрЛиц", "Сформировать документы ЮрЛиц", False
Add_Control_Ex ShapesCB, 1, 19, "СформироватьДоговоры", "Сформировать Договоры", False
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
Function Add_Control_Ex(ByRef menu, ByVal B_Type As Integer, ByVal B_Face As Integer, _
ByVal On_Action As String, ByVal B_Caption As String, Optional ByVal Begin_Group As Boolean = False, Optional Tag As String = "") As CommandBarControl
' добавляет контролы в меню menu ' type=1 - это кнопка, type=4 - это комбобокс, 10 - popup
On Error Resume Next
Set Add_Control_Ex = menu.Controls.Add(B_Type, , , 1)
With Add_Control_Ex
If B_Face > 0 Then .FaceId = B_Face:
.Tag = Tag: .OnAction = On_Action: .Caption = B_Caption: If Begin_Group Then .BeginGroup = True
End With
End Function