简体   繁体   English

宏按功能区菜单中的按钮

[英]Macro to press a button in the Ribbon Menu

In a specific Excel sheet, I would like to have a macro to reach the "Analysis" button on Excel Ribbon and then to press a specific button "Alles aktualisieren". 在特定的Excel工作表中,我希望有一个宏来访问Excel功能区上的“分析”按钮,然后按下特定按钮“Alles aktualisieren”。 You can see the screenshot for the clarification. 您可以看到屏幕截图以进行说明。

在此输入图像描述

Analysis tab is an add-on of SAP-BI, so it is not an Standard Excel tab. “分析”选项卡是SAP-BI的附加组件,因此它不是“标准Excel”选项卡。

As one of the users suggested me, I recorded the macro, and I got the following Code, but when I run the macro, it is not working. 正如用户之一建议我的那样,我记录了宏,我得到了以下代码,但是当我运行宏时,它无效。

Sub Makro1()


Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Selection.UnMerge
Selection.UnMerge
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")
Application.Run Range("CallbackWorkbookSaved")

End Sub

Use the SAP API : 使用SAP API

Public Sub SAP_Daten_aktualisieren()
Dim lResult As Variant

Application.StatusBar = Now & " Daten auf Afo-Blättern werden aktualisiert.."
DoEvents


lResult = Application.Run("SAPExecuteCommand", "Refresh", "All")
If lResult <> 1 Then
    Application.StatusBar = Now & " Problem beim Aktualisieren der SAP Daten "
    MsgBox "Fehler beim Aktualisieren der SAP Daten. SAPCode= " & lResult, vbCritical
Else
    Application.StatusBar = Now & " Fertig: SAP Daten wurden erfolgreich aktualisiert "
End If

End Sub

Are you aware that macros can be recorded? 你知道可以记录宏吗? I'd advise you to start recording a macro, press that button, stop the recording and see what your recorded macro looks like. 我建议你开始录制一个宏,按下该按钮,停止录制,看看录制的宏看起来像什么。 Once you have this, if you stil have any questions, please edit your question, add the recorded code, we might have a further look at it. 如果您有此问题,如果您有任何疑问,请编辑您的问题,添加录制的代码,我们可能会进一步查看它。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM