Macro di Visual Basic in Report Builder
Questa versione legacy del componente aggiuntivo Report Builder funziona ancora. È possibile convertire le cartelle di lavoro legacy nella nuova 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 di Report Builder e accedere.
Adobe supporta tre metodi API Report Builder.
RefreshAllReportBuilderRequests()
La macro RefreshAllReportBuilderRequests() aggiorna tutte le richieste Report Builder nella cartella di lavoro attiva. Inizia chiamando il componente aggiuntivo COM Report Builder tramite il relativo ID prodotto, quindi chiama il comando 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() aggiorna tutte le richieste Report Builder nel foglio di lavoro attivo. La chiamata API RefreshWorksheetRequests() accetta un oggetto foglio di lavoro come argomento. È possibile utilizzare questa chiamata per qualsiasi foglio di lavoro contenente richieste 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() aggiorna tutte le richieste 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