VBA-Makros, auch als Visual Basic-Makros bekannt, ermöglichen es Ihnen, Arbeitsmappen auf eine Art und Weise zu ändern, die mit Microsoft Excel allein nicht möglich ist. Visual Basic hat Zugriff auf Arbeitsmappen, Excel und sogar auf Windows.

Seit dem 21. März 2013 kann VBA drei Report Builder-API-Methoden aufrufen. Um diese API-Aufrufe zu verwenden, stellen Sie sicher, dass die neueste Version von Report Builder installiert ist, und melden Sie sich an, bevor Sie die Makros ausführen.

Wichtig: Aus Sicherheitsgründen kann eine Arbeitsmappe, die ein Makro enthält, nicht über die Planungsschnittstelle von Report Builder geplant werden.

Aus Sicherheitsgründen kann eine Arbeitsmappe, die ein Makro enthält, nicht über die Planungsschnittstelle von Report Builder geplant werden. 

RefreshAllReport BuilderRequests()

Dieses Makro aktualisiert alle Report Builder-Anforderungen in der aktiven Arbeitsmappe. Es beginnt, indem es das Report Builder-COM-Add-in über seine Produkt-ID aufruft. Anschließend ruft es den API-Befehl RefreshAllRequests() auf:

Sub RefreshAllReportBuilderRequests()

 Dim addIn As COMAddIn
 Dim automationObject As Object
 Dim success As String
 Set addIn = Application.COMAddIns("ReportBuilderAddIn.Connect")
 Set automationObject = addIn.Object
 success = automationObject.RefreshAllRequests(ActiveWorkbook)

End Sub

RefreshAllReport BuilderRequestsInActiveWorksheet()

Dieses Makro aktualisiert alle Report Builder-Anforderungen im aktiven Arbeitsblatt. Der API-Aufruf RefreshWorksheetRequests() verwendet ein Arbeitsblattobjekt als Argument. Sie können diesen Aufruf für jedes Arbeitsblatt verwenden, das Report Builder-Anforderungen enthält:

Sub RefreshAllReportBuilderRequestsInActiveWorksheet()

 Dim addIn As COMAddIn
 Dim automationObject As Object
 Dim success As String
 Set addIn = Application.COMAddIns("ReportBuilderAddIn.Connect")
 Set automationObject = addIn.Object
 success = automationObject.RefreshWorksheetRequests(ActiveWorkbook.ActiveSheet)

End Sub

RefreshAllReport BuilderRequestsInCellsRange()

Dieses Makro aktualisiert alle Report Builder-Anforderungen, deren Zellausgaben den angegebenen Zellbereich überschneiden. Der in diesem Beispiel verwendete Zellbereich verweist auf den Bereich B1:B54 des Arbeitsblatts „Daten“ innerhalb der aktiven Arbeitsmappe. Der Bereichsausdruck unterstützt alle unterstützten Excel-Bereichsausdrücke:

Sub RefreshAllReportBuilderRequestsInCellsRange()

 Dim addIn As COMAddIn
 Dim automationObject As Object
 Dim success As String
 Set addIn = Application.COMAddIns("ReportBuilderAddIn.Connect")
 Set automationObject = addIn.Object
 success = automationObject.RefreshRequestsInCellsRange("'Data'!B1:B54")
 
End Sub

Dieses Werk unterliegt den Bedingungen der Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.  Twitter™- und Facebook-Beiträge fallen nicht unter die Bedingungen der Creative Commons-Lizenz.

Rechtliche Hinweise   |   Online-Datenschutzrichtlinie