Compartir a través de


Patrones personalizados de Excel

En este tema se describen los patrones de Automatización de la interfaz de usuario personalizados proporcionados en Microsoft Excel para Windows. Estos patrones se pueden consultar y usar desde el nodo del proveedor para una hoja de cálculo de Excel específica.

Con fines de experimentación, hemos creado scripts especiales de PowerShell en el Galería de PowerShell que ejercen cada patrón personalizado de Excel. Estos se llaman explícitamente con cada patrón, o puede buscar en el Galería de PowerShell para CustomPatternClient_Excel ver todos los scripts de Excel. Estos scripts se pueden ejecutar en una ventana de PowerShell en una instancia en ejecución de Excel en Windows 11 para ver qué salida generan los patrones personalizados. Los scripts se documentan por sí solos con ayuda basada en comentarios.

El objetivo principal de estos patrones es proporcionar información de la hoja que no está limitada al área visible de la hoja. Los nombres y los intervalos son el modo de comunicación, en lugar de los objetos de accesibilidad. En el caso de las celdas, el nombre que se usa en estos patrones también está disponible como UIA_AutomationIdPropertyId.

Operandos comunes a todos los métodos

Hay 3 operandos de entrada fijos para cada llamada al método de patrón personalizado.

Operando Tipo Descripción
0 ConnectBoundObject Pattern (objeto)
1 GUID Guid del método
2 Int32 Número total de argumentos de entrada y salida

Valores devueltos

Cada método descrito aquí devuelve un HRESULT para callextension para indicar que se ha realizado correctamente o no. Una operación correcta devuelve S_OK y una operación con error producirá UIA_E_INVALIDOPERATON.

ISheetCellInventory

Descripción

Guid: {654823FE-A483-4915-8709-67266866E518}

Este es un patrón de una hoja de cálculo que recopila celdas que coinciden con ciertos rasgos. En todos los casos, devuelven una colección de cadenas que son nombres de celda.

PowerShell Script

CustomPatternClient_Excel_Cell_Inventory.ps1

Métodos

GetCellsWithFormula

Guid: {24E137F2-4FFF-4F50-84AD-2ACD780E7E1F}

Devuelve los nombres de las celdas de la hoja de cálculo que tienen fórmulas.

Operando Role Tipo Descripción
3 Salida StringArray Nombres de celda

GetCellsWithHyperlink

Guid: {B640F40E-E51A-4CDD-9604-843AA5107C1C}

Devuelve los nombres de las celdas que tienen hiperlnks literales. Es decir, celdas con un valor que es una dirección URL.

Operando Role Tipo Descripción
3 Salida StringArray Nombres de celda

GetCellsWithFormulaHyperlink

Guid: {0AAF2B49-015B-4AB3-A093-21F055E8E0F5}

Devuelve los nombres de las celdas que tienen hiperlnks de fórmula. En otras palabras, las celdas que usan la función HYPERLINK en su fórmula.

Operando Role Tipo Descripción
3 Salida StringArray Nombres de celda

GetCellsWithNote

Guid: {8F171892-A3B1-4F92-9CE1-CE818B848F52}

Devuelve los nombres de las celdas que tienen una nota o un comentario heredado no subproceso asociado a ellas.

Operando Role Tipo Descripción
3 Salida StringArray Nombres de celda

GetCellsWithComment

Guid: {4D4E49BC-CE16-44CD-AC48-1DAA2E862C41}

Devuelve los nombres de las celdas que tienen comentarios subprocesos asociados a ellas.

Operando Role Tipo Descripción
3 Salida StringArray Nombres de celda

ISheetRangeInventory

Descripción

Guid: {62F8DBCE-13DC-4EF2-AF53-5247ED2A4980}

Este patrón de hoja de cálculo recopila rangos de celdas. Estos métodos devuelven una colección de cadenas que representan un rango de celdas. El rango se puede describir por su nombre (si procede) y, opcionalmente, por la referencia del rango de celdas, separado del nombre por una cadena delimitadora de entrada.

PowerShell Script

CustomPatternClient_Excel_Range_Inventory.ps1

Métodos

GetTableNamesAndRanges

Guid: {3FB8E49A-BB4A-4B6C-8B25-CB7E612DA92E}

Obtiene los nombres de las tablas de lista y sus intervalos si se solicitan. Las especificaciones del intervalo se separan del nombre de la tabla por la cadena delimitadora de entrada.

Operando Role Tipo Descripción
3 Input Booleano Incluir especificaciones de rango
4 Input Cadena Separador de campos de nombre y rango
5 Salida StringArray Nombres de intervalo y referencias si se solicitan

GetPivotTableNamesAndRanges

Guid: {B22CD312-E265-49AE-9C73-11CE3D7B8526}

Obtiene los nombres de las tablas dinámicas y sus intervalos si se solicitan. Las especificaciones del intervalo se separan del nombre de la tabla por la cadena delimitadora de entrada.

Operando Role Tipo Descripción
3 Input Booleano Incluir especificaciones de rango
4 Input Cadena Separador de campos de nombre y rango
5 Salida StringArray Nombres de intervalo y referencias si se solicitan

GetNamedRanges

Guid: {EFC59F27-E965-48A5-8C79-7BB9E70958FD}

Obtiene los intervalos con nombre y sus especificaciones de intervalo si se solicitan. Estos son intervalos de celdas que se han denominado mediante el administrador de nombres y no incluyen los que proceden de tablas. Las especificaciones del intervalo se separan del nombre de la tabla por la cadena delimitadora de entrada.

Operando Role Tipo Descripción
3 Input Booleano Incluir especificaciones de rango
4 Input Cadena Separador de campos de nombre y rango
5 Salida StringArray Nombres de intervalo y referencias si se solicitan

GetUnnamedDataRanges

Guid: {60EBB5D1-299D-471D-8DAB-00EE39EBA79E}

Obtiene rangos de celdas con datos que, de lo contrario, no forman parte de un rango o tabla con nombre.

Operando Role Tipo Descripción
3 Salida StringArray Referencias de rango

GetRowRangesOnPageBreaks

Guid: {2544B784-764D-4EAA-A72F-BABBF28B5504}

Obtiene referencias de rango de filas únicas que abarcan el área imprimible de la hoja de cálculo que precede a un salto de página horizontal.

Operando Role Tipo Descripción
3 Salida StringArray Referencias de rango

GetColumnRangesOnPageBreaks

Guid: {BEA372DC-2FD8-4852-A8BC-2DA34CEA5456}

Obtiene referencias de rango de columnas únicas que abarcan el área imprimible de la hoja de cálculo que precede a un salto de página vertical.

Operando Role Tipo Descripción
3 Salida StringArray Referencias de rango

ISheetObjectInventory

Descripción

Guid: {62F8DBCE-13DC-4EF2-AF53-5247ED2A4980}

Este patrón de hoja de cálculo devuelve una colección de objetos con nombre en la hoja de un tipo especificado.

PowerShell Script

CustomPatternClient_Excel_Object_Inventory.ps1

Métodos

GetChartNames

Guid: {6D199DC0-7AF0-43CC-A572-8CF9EE556F75}

Obtiene los nombres de los gráficos de la hoja.

Operando Role Tipo Descripción
3 Salida StringArray Nombres de gráfico

GetSmartDiagramNames

Guid: {AF8706FA-6389-4F90-9EF8-F64AED618C4F}

Obtiene los nombres de los diagramas de Smart Art en la hoja.

Operando Role Tipo Descripción
3 Salida StringArray Nombres de diagrama

GetSlicerNames

Guid: {7D6295DF-E9CC-4B86-BE9F-60BACCB7289D}

Obtiene los nombres de los objetos de segmentación de datos de la hoja.

Operando Role Tipo Descripción
3 Salida StringArray Nombres de segmentación de datos

GetTimeSlicerNames

Guid: {F8768BF3-9733-4BD9-9251-507649FF3257}

Obtiene los nombres de los objetos de segmentación de tiempo de la hoja.

Operando Role Tipo Descripción
3 Salida StringArray Nombres de segmentación de tiempo

GetImageNames

Guid: {A2807141-BA1F-4088-85A1-4C00F140998C}

Obtiene los nombres de los objetos de imagen de la hoja.

Operando Role Tipo Descripción
3 Salida StringArray Nombres de imagen

GetShapeNames

Guid: {C50C4B9E-2F62-4E47-993D-A961D0C6A03D}

Obtiene los nombres de las formas de dibujo en la hoja.

Operando Role Tipo Descripción
3 Salida StringArray Nombres de formas

ISheetContentSelect

Descripción

Guid: {5979E0BC-12AC-4105-B10A-2FD04546E9C2}

Este patrón proporciona los medios para seleccionar cualquier celda, colección de celdas o objeto de la hoja, independientemente del estado de vista actual. Las celdas que no están visibles no tienen ningún elemento accesible en el que ejercer un patrón de elemento de selección, por lo que este patrón permite la selección por nombre de celda. El nombre de celda también es la propiedad AutomationID si desea volver a una celda visitada anteriormente. Este método también permite especificar un rango de celdas para seleccionar el formulario :. Los objetos también se pueden seleccionar por su nombre, tal y como devuelve ISheetObjectInventory.

PowerShell Script

CustomPatternClient_Excel_Selector.ps1

Métodos

SelectRange

Guid: {BB66F5D4-795E-4B6E-9D62-F14804FC240C}

Selecciona y hace visible una celda o rango de celdas en la hoja.

Operando Role Tipo Descripción
3 Input Cadena Nombre de celda, referencia de rango o nombre de rango

SelectObject

Guid: {E36D84D6-B003-47D2-9AC2-9A1B8BA6EB62}

Selecciona y hace visible un objeto en la hoja.

Operando Role Tipo Descripción
3 Input Cadena Nombre del objeto

ISheetCellValue

Descripción

Guid: {238037C4-BBA3-4C0E-9371-66046B81E957}

Este patrón se usa para recuperar los valores actuales de una celda o celdas dentro de una dirección de celda, rango o fila o columna de tabla en la hoja, independientemente de si la hoja está visible o no. La salida es una cadena con el valor de celda actual o una matriz de cadenas de pares de dirección-valor de celda al consultar un rango o una fila o columna de tabla.

PowerShell Script

CustomPatternClient_Excel_Cell_Value.ps1

Métodos

GetCellValue

Guid: {4C6CA843-D4F0-4CB6-B1AF-EF8DADEE9B2C}

Obtiene el valor actual de la celda.

Operando Role Tipo Descripción
3 Input Cadena Nombre de celda
4 Salida Cadena Valor actual de la celda

PowerShell Script

CustomPatternClient_Excel_Range_Values.ps1

Métodos

GetRangeValues

Guid: {1D69601E-D934-472B-BDCD-13147EE5A3A9}

Requisito: Microsoft 365 versión 2410 (compilación 18129.xxxxx)

Obtiene pares de direcciones y valores de celda no vacíos dentro del intervalo de entrada en el orden especificado. Los pares de dirección-valor de celda están separados por el delimitador de entrada.

Operando Role Tipo Descripción
3 Input Cadena Intervalo de celdas
4 Input Cadena Delimitador entre la dirección de celda y el valor de celda
5 Input Booleano Orden principal de fila o columna
6 Salida StringArray Pares de direcciones y valores de celda

PowerShell Script

CustomPatternClient_Excel_Table_Values.ps1

Métodos

GetTableColumnValues

Guid: {1F6DDBC5-F90E-4C07-BE5E-A7322AD3B737}

Requisito: Microsoft 365 versión 2410 (compilación 18129.xxxxx)

Obtiene pares de dirección-valor de celda para la columna o fila de la dirección de celda de entrada. El valor del encabezado de columna se puede incluir como se especifica en la entrada.

Operando Role Tipo Descripción
3 Input Cadena Dirección de celda
4 Input Booleano Encabezado de inclusión
5 Salida StringArray Valores de celda de la columna de tabla que contiene la celda de entrada

GetTableRowValues

Guid: {03F8C2C6-C58A-4CDF-B8CB-54C198F7525D}

Requisito: Microsoft 365 versión 2410 (compilación 18129.xxxxx)

Obtiene pares de dirección-valor de celda para la columna o fila de la dirección de celda de entrada.

Operando Role Tipo Descripción
3 Input Cadena Dirección de celda
4 Salida StringArray Valores de celda de la fila de tabla que contiene la celda de entrada

Requisitos

A menos que se especifique de forma diferente por método, la versión necesaria es: Microsoft 365 Versión 2107 (compilación 14326.xxxxx)

Recursos adicionales

UIA_AutomationIdPropertyId

Propiedades personalizadas, eventos y patrones de control

Implementación de patrones de control personalizados

Scripts de cliente de patrón personalizado de Excel