Текущее время: Вс, авг 03 2025, 09:12

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: VBA в BEx: Вызов макроса при сохранении раб.книги
СообщениеДобавлено: Вт, апр 22 2014, 09:35 
Начинающий
Начинающий

Зарегистрирован:
Вт, апр 22 2014, 08:38
Сообщения: 2
Добрый день!

Подскажите пожалуйста, как реализовать вызов макроса при нажатии на стандартную кнопку панели инструментов BEx'а "Сохранить существующую рабочую книгу"?
К примеру, для кнопки "Обновить запрос" аналогичный вызов прописывали в модуле SAPBEX так:

Sub SAPBEXonRefresh(queryID As String, resultArea As Range)
Call plan_SAPBEXonRefresh(queryID, resultArea)
End Sub

Заранее спасибо :)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: VBA в BEx: Вызов макроса при сохранении раб.книги
СообщениеДобавлено: Ср, апр 23 2014, 12:37 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, дек 18 2008, 07:37
Сообщения: 256
Добрый день!

Думаю что нельзя так сделать на уровне рабоочей книги, потому что в параметрах рабочих книг имеется только запуск макроса при актуализации, других событий не предусмотрено.

_________________
The extent of reliability of the data affect on the quality of resource allocation.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VBA в BEx: Вызов макроса при сохранении раб.книги
СообщениеДобавлено: Ср, апр 23 2014, 12:46 
Начинающий
Начинающий

Зарегистрирован:
Вт, апр 22 2014, 08:38
Сообщения: 2
Спасибо за ответ!
А свою кнопку в панель инструментов BEx'а добавить можно?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: VBA в BEx: Вызов макроса при сохранении раб.книги
СообщениеДобавлено: Ср, апр 23 2014, 14:07 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, дек 18 2008, 07:37
Сообщения: 256
Думаю можно добавить ещё одну свою надстройку со своими кнопками в Excel.

_________________
The extent of reliability of the data affect on the quality of resource allocation.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: VBA в BEx: Вызов макроса при сохранении раб.книги
СообщениеДобавлено: Ср, апр 30 2014, 23:14 
Специалист
Специалист

Зарегистрирован:
Сб, апр 24 2010, 11:41
Сообщения: 158
ria написал(а):
Спасибо за ответ!
А свою кнопку в панель инструментов BEx'а добавить можно?

Можно в надстойку. Примерно так:
Code:
Const pAction As String = "NewButton"
Const pCaption As String = "NewButton"

Private Sub Workbook_Activate()
  Call createButton
End Sub

Private Sub Workbook_Deactivate()
  Call deleteButton
End Sub

Private Sub Workbook_WindowActivate(ByVal Wn As Window)
  Call createButton
End Sub
Private Sub Workbook_WindowDeActivate(ByVal Wn As Window)
  Call deleteButton
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
  If Cancel = True Then
    Call deleteButton
  End If
End Sub

Private Sub Workbook_Open()
For Each cb In Application.CommandBars
    If cb.Name = "Interface" Then
       cb.Delete
       Exit For
     End If
Next cb
Call createButton
End Sub

Public Sub SetSBOButtonProps(ByVal lVisibility As Boolean)
  With Application.CommandBars("Interface")
    .Visible = lVisibility
  End With
  With Application.CommandBars("Interface").Controls(1)
    .OnAction = pAction
    .Caption = pCaption
  End With
End Sub

Sub createButton()

Dim cb, myBar

For Each cb In Application.CommandBars
    If cb.Name = "RestForms" Then
       cb.Delete
     End If
Next cb

Set myBar = Application.CommandBars _
    .Add(Name:="RestForms", Position:=msoBarTop, Temporary:=True)
  Set Newitem = myBar.Controls.Add(Type:=msoControlButton)
With Newitem
    .Caption = pCaption
    .FaceId = 271
    .OnAction = pAction
    .Style = msoButtonIconAndCaption
    .Enabled = True
End With
  myBar.Visible = True
End Sub

Sub deleteButton()
Dim cb
For Each cb In Application.CommandBars
    If cb.Name = "RestForms" Then
       cb.Delete
       Exit For
     End If
Next cb
End Sub


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB