Les macros VBA, également appelées macros Visual Basic, vous permettent de manipuler des classeurs d’une façon impossible avec Microsoft Excel seul. Visual Basic a accès au classeur, à Excel et même à Windows.
Adobe est compatible avec trois méthodes de l’API Report Builder. Assurez-vous que la dernière version en date de Report Builder est installée et connectez-vous avant d’exécuter les macros.
Pour des raisons de sécurité, vous ne pouvez pas planifier un classeur qui contient une macro.
RefreshAllReportBuilderRequests()
La macro RefreshAllReportBuilderRequests()
actualise toutes les requêtes de Report Builder dans le classeur actif. Elle commence par appeler le complément COM de Report Builder grâce à son ID de produit, puis elle appelle la commande API RefreshAllRequests()
:
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
RefreshAllReportBuilderRequestsInActiveWorksheet()
La macro RefreshAllReportBuilderRequestsInActiveWorksheet()
actualise toutes les requêtes de Report Builder dans la feuille de calcul active. L’appel API RefreshWorksheetRequests()
prend un objet de feuille de calcul comme argument. Vous pouvez utiliser cet appel pour toute feuille de calcul contenant des requêtes de Report Builder :
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
RefreshAllReportBuilderRequestsInCellsRange()
La macro RefreshAllReportBuilderRequestsInCellsRange()
actualise toutes les requêtes de Report Builder dont les résultats intersectent la plage de cellules spécifiée. La plage de cellules utilisée dans cet exemple pointe vers la plage B1:B54
de la feuille de calcul « Data » du classeur actif. L’expression de plage est compatible avec toutes les expressions de plage prises en charge par Excel :
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