API di thinkcell
- Home
- Risorse
- Manuale dell’utente
- API di thinkcell
In Windows, è possibile programmare alcune funzioni di thinkcell tramite l'API di thinkcell. Questa appendice contiene una panoramica di tutte le funzioni API disponibili e istruzioni generali per configurare l'ambiente di sviluppo per scrivere macro, componenti aggiuntivi o programmi autonomi che accedono a queste funzioni.
Introduzione all'API di thinkcell
L'API di thinkcell è integrata nel Component Object Model (COM) di Microsoft, quindi è possibile accedere all'API da qualsiasi linguaggio con cui si possa programmare Office, ad esempio Visual Basic for Applications (VBA) o C#.
Il punto di ingresso in thinkcell è l'oggetto componente aggiuntivo thinkcell. È possibile accedervi tramite la raccolta Application.COMAddIns. Le chiamate a thinkcell sono sempre late-bound, quindi non esiste alcuna libreria dei tipi o riferimento da aggiungere. Per una spiegazione dell'associazione anticipata e tardiva in Automation, vedere Microsoft Learn.
Alcune funzioni API sono metodi dell'oggetto componente aggiuntivo thinkcell in PowerPoint, mentre altre funzioni API sono metodi dell'oggetto componente aggiuntivo thinkcell in Excel. Usiamo tcPpAddIn per i riferimenti al componente aggiuntivo di PowerPoint e tcXlAddIn per i riferimenti al componente aggiuntivo di Excel.
Visual Basic for Applications
Per scrivere macro usando Visual Basic for Applications (VBA), si usa l'ambiente di sviluppo integrato nell'applicazione host di Office. È possibile accedervi premendo Alt+F11. La definizione di una macro è in genere contenuta in un modulo, che è possibile aggiungere tramite Insert > Module. È possibile visualizzare tutte le macro definite per un determinato documento premendo Alt+F8.
Per indicare che le chiamate ai metodi nel componente aggiuntivo thinkcell sono late-bound, è necessario dichiarare la variabile contenente il riferimento a esso come Object:
Dim tcaddin As Object
Set tcaddin = Application.COMAddIns("thinkcell.addin").Object
La libreria dei tipi per l'applicazione host di Office è sempre referenziata per impostazione predefinita. Se è necessario accedere al modello a oggetti di un'altra applicazione di Office, è necessario aggiungere la relativa libreria dei tipi come riferimento.
Ad esempio, se si vuole usare una macro in PowerPoint per manipolare dati in un foglio Excel prima di aggiornare un grafico thinkcell da tali dati, è necessario aggiungere manualmente la Microsoft Excel 16.0 Object Library tramite la finestra di dialogo Tools > References nell'ambiente di sviluppo VBA.
Nota: 16.0 è il numero di versione di Office 2016 e versioni successive. Per Office 2013, è necessario usare la libreria oggetti 15.0. Se sono installate più versioni di Office, la finestra di dialogo References mostrerà solo le librerie oggetti dell'ultima versione installata. Di seguito si presuppone l'uso di Office 2016 o versione successiva.
L'uso di Application.COMAddIns("thinkcell.addin").Object restituisce sempre l'oggetto componente aggiuntivo thinkcell dell'applicazione host di Office corrente, ovvero tcPpAddIn o tcXlAddIn, a seconda che venga usato in PowerPoint o Excel. Per acquisire un riferimento all'oggetto componente aggiuntivo nell'altra applicazione di Office e accedere alle funzioni API che espone, acquisirlo tramite un'istanza applicazione appropriata.
Ad esempio, per acquisire un riferimento a tcXlAddIn da PowerPoint:
Dim xlapp As Object
Set xlapp = New Excel.Application
Dim tcXlAddIn As Object
Set tcXlAddIn = xlapp.COMAddIns("thinkcell.addin").Object
Si noti che questo richiede l'aggiunta della libreria oggetti di Excel come riferimento.
Si consiglia di usare l'istruzione Option Explicit, che impone la dichiarazione esplicita di tutte le variabili, aiutando così a evitare errori di programmazione comuni e migliorando i suggerimenti forniti da IntelliSense. È possibile aggiungerla automaticamente a tutti i moduli attivando Tools > Options > Code Settings > Require Variable Declaration. È inclusa in tutti i nostri esempi di codice.
C#
È possibile usare l'API di thinkcell da C# durante lo sviluppo di componenti aggiuntivi ed estensioni del codice dei documenti eseguiti all'interno di un'applicazione host di Office, nonché durante lo sviluppo di applicazioni autonome.
Di seguito si presuppone l'uso di Visual Studio 2017 o versione successiva per sviluppare soluzioni Office in C#. Fare riferimento alla sezione successiva per istruzioni di configurazione più specifiche per lo sviluppo di componenti aggiuntivi. Per ciascuno dei nostri esempi di codice, indicheremo quale modello di progetto di Visual Studio usare.
Per rendere late-bound le chiamate ai metodi verso l'oggetto componente aggiuntivo thinkcell, dichiarare la variabile contenente il riferimento all'oggetto componente aggiuntivo thinkcell come dynamic; questo è anche il tipo dedotto dal compilatore quando si dichiara il riferimento come var, quindi è possibile scrivere semplicemente:
var tcPpAddIn = ppapp.COMAddIns.Item("thinkcell.addin").Object;
Qui ppapp è un riferimento a un oggetto Application di PowerPoint in cui thinkcell è caricato.
Per accedere al modello a oggetti di un'applicazione di Office, è necessario aggiungere al progetto come riferimento la relativa libreria dei tipi oppure il relativo primary interop assembly (PIA). Si consiglia di aggiungere la libreria dei tipi se possibile, poiché Visual Studio aggiungerà automaticamente un riferimento al PIA corrispondente, se disponibile, oppure genererà un assembly di interoperabilità dalla libreria dei tipi se non ce n'è uno (vedere qui).
Ad esempio, per poter ottenere il riferimento all'oggetto componente aggiuntivo thinkcell come sopra, aggiungere la Microsoft PowerPoint 16.0 Object Library disponibile nella scheda COM > Type Libraries della finestra di dialogo Reference Manager. A seconda del tipo di progetto, si accede a questa finestra di dialogo facendo clic con il pulsante destro del mouse su References o Dependencies in Solution Explorer e selezionando Add (COM) Reference.
Nota: 16.0 è il numero di versione di Office 2016 e versioni successive. Usando l'opzione Embed Interop Types, abilitata per impostazione predefinita per un riferimento a una libreria dei tipi COM, un'applicazione compilata con questo riferimento sarà compatibile con le versioni precedenti (e successive) di Office purché tutte le interfacce usate esistano nel relativo modello a oggetti. Vedere qui per ulteriori informazioni.
Le funzioni API di thinkcell indicano gli errori usando HRESULT COM. Alcuni di questi vengono mappati automaticamente sulle classi di eccezioni .NET corrispondenti; vedere Procedura: eseguire il mapping di HRESULT ed eccezioni .
Sviluppo di componenti aggiuntivi
Per sviluppare componenti aggiuntivi per Office o estensioni del codice per documenti di Office, si usano i modelli di progetto PowerPoint/Excel VSTO Add-in ed Excel VSTO Template/Workbook. Fanno parte degli Office Developer Tools for Visual Studio, installati come parte della configurazione predefinita. Se questi strumenti e modelli non sono disponibili nell'installazione di Visual Studio, è possibile aggiungerli, ad esempio, passando a Settings⚙ > Apps > Visual Studio 2022 > Modify > Other Toolsets, selezionando Office/SharePoint development e facendo clic su Modify. Vedere anche la documentazione di Microsoft qui e qui.
Il PIA per l'applicazione host di Office del modello selezionato viene sempre caricato per impostazione predefinita. Se è necessario accedere al modello a oggetti di un'altra applicazione di Office, è necessario aggiungere la relativa libreria dei tipi come riferimento, come spiegato sopra.
Nota: l'API di thinkcell non può essere usata dai componenti aggiuntivi Web di Office, purtroppo ora chiamati semplicemente "componenti aggiuntivi di Office" da Microsoft, poiché non possono interagire direttamente con il modello a oggetti dell'applicazione di Office e, in particolare, non possono interagire con componenti aggiuntivi COM come thinkcell.
Riferimento API
In Windows, è possibile usare le API seguenti:
Automazione con dati di Excel
Aggiornare automaticamente gli elementi thinkcell in un modello di PowerPoint con dati da Excel. Per ulteriori informazioni, vedere Automazione con dati di Excel.
|
API |
Descrizione |
Argomento del manuale |
|---|---|---|
|
|
Crea una copia di un modello di PowerPoint e aggiorna tutti gli elementi thinkcell nella presentazione copiata collegati a una cartella di lavoro di Excel |
|
|
|
Aggiorna elementi thinkcell specifici in un modello di PowerPoint, indipendentemente dal fatto che siano collegati a Excel |
|
|
|
Aggiorna un elemento thinkcell in un modello di PowerPoint con dati da Excel. |
File di stile
Caricare, visualizzare e rimuovere i file di stile thinkcell. Per ulteriori informazioni, vedere File di stile.
|
API |
Descrizione |
Argomento del manuale |
|---|---|---|
|
|
Carica un file di stile in uno schema diapositiva o in un layout diapositiva |
|
|
|
Carica un file di stile in modo che si applichi solo a un'area specifica di un layout diapositiva |
Caricare un file di stile in un'area del layout: LoadStyleForRegion |
|
|
Restituisce il nome del file di stile attivo in uno schema diapositiva o in un layout diapositiva |
|
|
|
Rimuove tutti i file di stile da un layout diapositiva |
Grafici Mekko Graphics
Importare e ispezionare i grafici Mekko Graphics in thinkcell. Per ulteriori informazioni, vedere Importare grafici Mekko Graphics.
|
API |
Descrizione |
Argomento del manuale |
|---|---|---|
|
|
Sostituisce i grafici Mekko Graphics in PowerPoint con grafici thinkcell |
|
|
|
Estrae la definizione XML di un grafico Mekko Graphics |
Hai bisogno di risolvere un problema?
Consulta la nostra knowledge base