2020-09-12 10:18发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好。 关于VBA和BPC,我有一个非常基本的问题。 将BPC模板保存到服务器时,VBA事件 Workbook_BeforeSave()似乎不起作用。 我知道服务器上的 Workbook_Open()事件也存在类似的问题,并且可以创建常规宏 after_workbook_open()。
有人知道 BeforeSave 是否也有类似的东西吗? 我尝试了 before_workbook_save(),但未成功。
不幸的是,保存到服务器文件夹时没有触发任何事件。 您可以使用SaveToServerRootFolder使用宏创建自己的按钮。 在此宏中,您可以插入所需的代码(但即使在这种情况下,如果用户按"取消",它也将无法正确执行)
谢谢。 我讨厌接受" NOPE "的答案! 但是,如果正确,则...被接受。 不确定BPC开发人员是否阅读这些板,但是..... 亲爱的SAP ... 有一个工作簿_要注意 事件将是一个有价值的功能。 更改模板时,管理员通常会忘记执行某些操作来重置模板(正确设置上下文成员,具有空白模板等)。 为了解决这个问题,许多开发人员,例如我自己,都会创建某种reset_macro。 这样可以节省时间,并确保管理员不会忘记任何步骤。
但是,如果没有WORKBOOK_BEFORESAVE事件,则需要管理员记住在保存模板之前运行此宏。 通常,管理员确实会记住,但是如果他们忘记了意义,那么结果可能是有意义的(显示薪水的HR模板!)。 先生。 Kalinin的建议给出了不错的选择,但仍然需要管理员记住在保存模板时执行宏。 希望有用。��
示例:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI为布尔值,取消为布尔值) ThisWorkbook.Worksheets(" Sheet1")。Range(" A1")。Value = CStr(Now()) 结束Sub
如果我执行如下宏:
Public Sub Save1() ThisWorkbook.SaveAs" C:\ Users \ KalininVE \ Desktop save.xlsm" 结束Sub
然后标准事件将起作用...
看起来EPM代码正在执行以下操作:
公共Sub Save1() Application.EnableEvents = False ThisWorkbook.SaveAs" C:\ Users \ KalininVE \ Desktop save.xlsm" Application.EnableEvents = True 结束Sub
P.S。
即使禁用了事件,仍可以使用Application.Run执行Workbook_BeforeSave:
公共Sub SaveProc() Application.EnableEvents = False Application.Run" ThisWorkbook.Workbook_BeforeSave",错误,错误 Application.DisplayAlerts = False ThisWorkbook.SaveAs" C:\ Users \ KalininVE \ Desktop save.xlsm" Application.EnableEvents = True Application.DisplayAlerts = True 结束Sub
您好史蒂芬·里德
我正在谈论执行保存到服务器的可能的EPM代码。
2个选项:
1。 不要禁用事件。
2。 如果出于某种原因(不知道为什么)需要禁用事件,则至少使用Application直接调用BeforeSave。运行
当前未使用任何选项
最多设置5个标签!
不幸的是,保存到服务器文件夹时没有触发任何事件。 您可以使用SaveToServerRootFolder使用宏创建自己的按钮。 在此宏中,您可以插入所需的代码(但即使在这种情况下,如果用户按"取消",它也将无法正确执行)
谢谢。 我讨厌接受" NOPE "的答案! 但是,如果正确,则...被接受。
不确定BPC开发人员是否阅读这些板,但是.....
亲爱的SAP ...
有一个工作簿_要注意 事件将是一个有价值的功能。 更改模板时,管理员通常会忘记执行某些操作来重置模板(正确设置上下文成员,具有空白模板等)。 为了解决这个问题,许多开发人员,例如我自己,都会创建某种reset_macro。 这样可以节省时间,并确保管理员不会忘记任何步骤。
但是,如果没有WORKBOOK_BEFORESAVE事件,则需要管理员记住在保存模板之前运行此宏。 通常,管理员确实会记住,但是如果他们忘记了意义,那么结果可能是有意义的(显示薪水的HR模板!)。
先生。 Kalinin的建议给出了不错的选择,但仍然需要管理员记住在保存模板时执行宏。
希望有用。
��
示例:
如果我执行如下宏:
然后标准事件将起作用...
看起来EPM代码正在执行以下操作:
P.S。
即使禁用了事件,仍可以使用Application.Run执行Workbook_BeforeSave:
您好史蒂芬·里德
我正在谈论执行保存到服务器的可能的EPM代码。
2个选项:
1。 不要禁用事件。
2。 如果出于某种原因(不知道为什么)需要禁用事件,则至少使用Application直接调用BeforeSave。运行
当前未使用任何选项
一周热门 更多>