Macro di Visual Basic nel Report Builder

Le macro di Visual Basic (VBA) includono funzionalità che consentono di aggiornare le cartelle di lavoro di Excel. Visual Basic dispone dell'accesso alla cartella di lavoro, a Excel e a Windows.

Prima di eseguire le macro VBA, è necessario eseguire la versione più recente del Report Builder e accedere.

IMPORTANT
Per motivi di protezione, non è possibile pianificare una cartella di lavoro contenente una macro.

Adobe supporta tre metodi API di Report Builder.

RefreshAllReportBuilderRequests()

Il RefreshAllReportBuilderRequests() la macro aggiorna tutte le richieste di Report Builder nella cartella di lavoro attiva. Inizia chiamando il componente aggiuntivo COM di Report Builder tramite il relativo ID prodotto, quindi chiama RefreshAllRequests() Comando API:

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()

Il RefreshAllReportBuilderRequestsInActiveWorksheet() macro aggiorna tutte le richieste di Report Builder nel foglio di lavoro attivo. Il RefreshWorksheetRequests() La chiamata API accetta un oggetto del foglio di lavoro come argomento. È possibile utilizzare questa chiamata per qualsiasi foglio di lavoro contenente richieste di 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()

Il RefreshAllReportBuilderRequestsInCellsRange() macro aggiorna tutte le richieste di Report Builder i cui output di cella intersecano l'intervallo di celle specificato. L'intervallo di celle utilizzato in questo esempio punta all'intervallo B1:B54 del foglio di lavoro "Dati" nella cartella di lavoro attiva. L’espressione di intervallo supporta tutte le espressioni di intervallo di Excel supportate:

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
recommendation-more-help
a83f8947-1ec6-4156-b2fc-94b5551b3efc