API de thinkcell
- Inicio
- Recursos
- Manual del usuario
- API de thinkcell
En Windows, puede programar algunas funciones thinkcell a través de la API thinkcell. Este apéndice incluye una visión general de todas las funciones disponibles de la API, así como instrucciones generales sobre cómo configurar su entorno de desarrollo para escribir macros, complementos o programas independientes que accedan a ellas.
Comience a utilizar la API de thinkcell
La API de thinkcell está integrada en el modelo de objeto de componente (COM) de Microsoft, por lo que puede acceder a la API desde cualquier idioma con el que pueda programar Office, como Visual Basic for Applications (VBA) o C#.
El punto de entrada a thinkcell es el objeto de complemento thinkcell. Puede accederse a él por medio de la colección Application.COMAddIns. Las llamadas a thinkcell son siempre tardías, por lo que no hay ninguna biblioteca de tipos ni referencia que añadir. Para obtener una explicación de la vinculación temprana y tardía en Automatización, consulte Microsoft Learn.
Algunas funciones de la API son métodos del objeto del complemento de thinkcell en PowerPoint, y otras, métodos del objeto del complemento de thinkcell en Excel. Utilizamos tcPpAddIn para las referencias al complemento de PowerPoint, y tcXlAddIn para las referencias al complemento de Excel.
Visual Basic para Aplicaciones
Para escribir macros mediante Visual Basic para Aplicaciones (VBA), se utiliza el entorno de desarrollo integrado en la aplicación host de Office. Se puede acceder pulsando Alt+F11. La definición de una macro suele estar contenida en un módulo, que puede añadir mediante Insert > Module. Puede ver todas las macros definidas para un determinado documento pulsando Alt+F8.
Para indicar que las llamadas a métodos del complemento thinkcell son de vinculación tardía, debe declarar la variable que contiene la referencia a ella como Object:
Dim tcaddin As Object
Set tcaddin = Application.COMAddIns("thinkcell.addin").Object
De manera predeterminada, siempre se hace referencia a la biblioteca de tipos de la aplicación host de Office. Si necesita acceder al modelo de objetos de otra aplicación de Office, deberá añadir su biblioteca de tipos como referencia.
Por ejemplo, si desea utilizar una macro en PowerPoint para manipular datos en una hoja de Excel antes de actualizar un gráfico de thinkcell a partir de ella, deberá añadir manualmente la Microsoft Excel 16.0 Object Library a través del cuadro de diálogo Tools > References en el entorno de desarrollo de VBA.
Nota: 16.0 es el número de versión de Office 2016 y posteriores. Para Office 2013, debe utilizar la biblioteca de objetos 15.0. Si tiene varias versiones de Office instaladas, el cuadro de diálogo References solo mostrará las bibliotecas de la versión más reciente instalada. En lo que sigue supondremos que utiliza Office 2016 o posterior.
Utilizando Application.COMAddIns("thinkcell.addin").Object siempre obtendrá el objeto de complemento de thinkcell de la aplicación host de Office actual, es decir, tcPpAddIn o tcXlAddIn, dependiendo de si lo utiliza en PowerPoint o Excel. Para adquirir una referencia al objeto del complemento en la otra aplicación de Office y acceder a las funciones de la API que expone, adquiéralo a través de una instancia de aplicación adecuada.
Por ejemplo, para adquirir una referencia a tcXlAddIn desde PowerPoint:
Dim xlapp As Object
Set xlapp = New Excel.Application
Dim tcXlAddIn As Object
Set tcXlAddIn = xlapp.COMAddIns("thinkcell.addin").Object
Tenga en cuenta que esto requiere añadir una biblioteca de objetos de Excel como una referencia.
Recomendamos utilizar la instrucción Option Explicit, que fuerza la declaración explícita de todas las variables, ayudando así a evitar errores comunes de programación y mejorando las sugerencias proporcionadas por IntelliSense. Puede añadirlo automáticamente a todos los módulos activando Tools > Options > Code Settings > Require Variable Declaration. Se incluye en todos nuestros ejemplos de código.
C#
Puede utilizar la API de thinkcell desde C# al desarrollar complementos y extensiones de código de documentos que se ejecuten dentro de una aplicación host de Office, así como al desarrollar aplicaciones independientes.
En lo que sigue supondremos que utiliza Visual Studio 2017 o posterior para desarrollar soluciones de Office en C#. Consulte la siguiente sección para obtener instrucciones de configuración más específicas para el desarrollo de complementos. Con cada uno de nuestros ejemplos de código, indicaremos qué plantilla de proyecto de Visual Studio utilizar.
Para que las llamadas a métodos del objeto del complemento de thinkcell sean de vinculación tardía, declare la variable que contiene la referencia al objeto del complemento de thinkcell como dynamic; este es también el tipo inferido por el compilador al declarar la referencia como var, de modo que pueda escribir simplemente:
var tcPpAddIn = ppapp.COMAddIns.Item("thinkcell.addin").Object;
Aquí ppapp es una referencia a un objeto Application de PowerPoint en el que se ha cargado thinkcell.
Para acceder al modelo de objetos de una aplicación de Office, debe añadir su biblioteca de tipos o su ensamblaje de interoperabilidad primaria (primary interop assembly, PIA) como referencia a su proyecto. Recomendamos añadir la biblioteca de tipos si es posible, ya que Visual Studio añadirá automáticamente una referencia al PIA correspondiente, si hay alguno disponible, o generará un ensamblado de interoperabilidad a partir de la biblioteca de tipos si no hay ninguno (ver aquí).
Por ejemplo, para poder obtener la referencia al objeto del complemento de thinkcell como arriba, debería añadir la Microsoft PowerPoint 16.0 Object Library que se encuentra en la pestaña COM > Type Libraries del cuadro de diálogo Reference Manager. Dependiendo del tipo de proyecto, para acceder a este cuadro de diálogo debe hacer clic con el botón derecho en References o Dependencies en Solution Explorer y seleccionar Add (COM) Reference.
Nota: 16.0 es el número de versión de Office 2016 y posteriores. Al usar la opción Embed Interop Types, que está habilitada de forma predeterminada para una referencia a una biblioteca de tipo COM, una aplicación compilada con esta referencia será compatible con versiones previas (y posteriores) de Office, siempre que todas las interfaces utilizadas existan en su mismo modelo de objeto. Consulte aquí para obtener más información.
Las funciones API de thinkcell indican errores utilizando COM HRESULTs. Algunas de ellas se asignan automáticamente a las correspondientes clases de excepción .NET, véase Cómo: asignar HRESULTs y excepciones .
Desarrollo de complementos
Para desarrollar complementos para Office o extensiones de código para documentos de Office, se utilizan las plantillas de proyecto PowerPoint/Excel VSTO Add-in y Excel VSTO Template/Workbook. Son parte de las Office Developer Tools for Visual Studio, que se instalan como parte de la configuración predeterminada. Si estas herramientas y plantillas no están disponibles en su instalación de Visual Studio, puede añadirlas, por ejemplo, yendo a Settings⚙ > Apps > Visual Studio 2022 > Modify > Other Toolsets, marcando Office/SharePoint development y haciendo clic en Modify. Consulte también la documentación de Microsoft aquí y aquí.
De forma predeterminada, siempre se carga el PIA para la aplicación host de Office de la plantilla seleccionada. Si necesita acceder al modelo de objetos de otra aplicación de Office, deberá añadir su tipo de biblioteca como referencia, tal como se explicaba previamente.
Nota: la API de thinkcell no se puede usar desde los complementos Web de Office, por desgracia ahora denominados simplemente "Complementos de Office" por Microsoft, ya que no pueden interactuar con el modelo de objetos de la aplicación de Office directamente, y, en particular, no puede interactuar con complementos COM como thinkcell.
Referencia de API
En Windows, puede utilizar las siguientes API:
Automatización con datos de Excel
Actualice automáticamente los elementos thinkcell de una plantilla de PowerPoint con datos de Excel. Consulte Automatización con datos de Excel para obtener más información.
|
API |
Descripción |
Tema manual |
|---|---|---|
|
|
Crea una copia de una plantilla de PowerPoint y actualiza todos los elementos thinkcell de la presentación copiada que están vinculados a un libro de Excel. |
|
|
|
Actualiza elementos thinkcell específicos en una plantilla de PowerPoint, independientemente de si están vinculados a Excel |
|
|
|
Actualiza un elemento thinkcell de una plantilla de PowerPoint con datos de Excel. |
Archivos de estilos
Cargar, ver y eliminar archivos de estilos thinkcell. Consulte Archivos de estilos para obtener más información.
|
API |
Descripción |
Tema manual |
|---|---|---|
|
|
Carga un archivo de estilo en un patrón de diapositiva o diseño de diapositiva |
|
|
|
Carga un archivo de estilo para que se aplique solo a un área específica de un diseño de diapositiva |
Cargar un archivo de estilos en un área del diseño: LoadStyleForRegion |
|
|
Devuelve el nombre del archivo de estilo que está activo en un patrón de diapositiva o diseño de diapositiva |
|
|
|
Elimina todos los archivos de estilo de un diseño de diapositiva |
Eliminar todos los archivos de estilos en un diseño: RemoveStyles |
Gráficos de Mekko Graphics
Importa gráficos de Mekko Graphics a thinkcell y los inspecciona. Consulte Importar gráficos de Mekko Graphics para obtener más información.
|
API |
Descripción |
Tema manual |
|---|---|---|
|
|
Sustituye los gráficos de Mekko Graphics en PowerPoint por gráficosthinkcell |
|
|
|
Extrae la definición XML de un gráfico de Mekko Graphics |
¿Necesitas ayuda para solucionar problemas?
Consulta nuestra base de conocimientos