Método CalculatedMembers.AddCalculatedMember (Excel)
Agrega un campo calculado o un elemento calculado a una tabla dinámica.
Sintaxis
expresión. AddCalculatedMember (Name, Formula, SolveOrder, Type, DisplayFolder, MeasureGroup, ParentHierarchy, ParentMember, NumberFormat)
Expresión Variable que representa un objeto CalculatedMembers .
Parameters
Nombre | Obligatorio/opcional | Tipo de datos | Descripción |
---|---|---|---|
Name | Obligatorio | String | Nombre del miembro calculado. |
Formula | Obligatorio | Variant | Fórmula del miembro calculado. |
SolveOrder | Opcional | Variant | Orden de resolución del miembro calculado. |
Tipo | Opcional | Variant | Tipo de miembro calculado. |
DisplayFolder | Opcional | Variant | Carpeta que existe para mostrar medidas calculadas. |
MeasureGroup | Opcional | Variant | Grupo al que pertenece el miembro calculado. |
ParentHierarchy | Opcional | Variant | Ruta de acceso primaria del ParentMember. |
ParentMember | Opcional | Variant | Elemento primario del miembro calculado. |
NumberFormat | Opcional | Variant | Formato de números utilizados para miembros calculados. |
Valor devuelto
CALCULATEDMEMBER
Comentarios
El argumento Formula debe tener una instrucción de sintaxis MDX (expresión multidimensional) válida. El argumento Name debe ser aceptable para el proveedor de procesamiento analítico en línea (OLAP).
DisplayFolder
Las carpetas para mostrar solo son válidas para las medidas calculadas. No son válidos para los miembros calculados.
String puede tener punto y coma; en él. Los punto y coma designan varias carpetas para mostrar. Por ejemplo, si usa la cadenamyfolder1;myfolder2, la medida calculada se mostrará en dos carpetas para mostrar, una denominada myfolder1 y la otra denominada myfolder2.
String puede tener barras diagonales inversas\
. Esto designa una ruta jerárquica para la carpeta para mostrar. Por ejemplo, si usa la cadena welcome\to\seattle, habrá una carpeta para mostrar denominada welcome que contiene una carpeta para mostrar llamada a la que contiene una carpeta para mostrar denominada seattle. Las carpetas para mostrar son carpetas virtuales; realmente no existen en el mismo sentido que pensamos en las carpetas del sistema. Solo existen para mostrar las medidas calculadas.
NumberFormat
Los formatos numéricos solo se pueden establecer mediante macros. No hay ninguna interfaz de usuario para establecerlas. Esta es la única propiedad que no se puede establecer a través de la interfaz de usuario. El tipo siempre es xlNumberFormatTypeDefault cuando se crea un miembro calculado a través de la interfaz de usuario. Los formatos numéricos solo son válidos para los miembros calculados. No son válidas para las medidas calculadas.
ParentHierarchy
La jerarquía primaria puede ser cualquier jerarquía MDX válida. Las jerarquías primarias solo son válidas para los miembros calculados. No son válidas para las medidas calculadas. Si se elige un miembro primario que se encuentra en una jerarquía primaria diferente, la jerarquía primaria se cambiará automáticamente para que coincida con la jerarquía primaria del miembro primario. Por ejemplo, suponga la siguiente macro para un miembro calculado.
OLEDBConnection.CalculatedMembers.AddCalculatedMember Name:="[UK+US]", _
Formula:= _
"[Customer].[Customer Geography].[Country].&[United Kingdom] + [Customer].[Customer Geography].[Country].&[United States] " _
, Type:=xlCalculatedMember, SolveOrder:=0, ParentHierarchy:= _
"[Account].[Accounts]", ParentMember:= _
"[Customer].[Customer Geography].[Australia]", NumberFormat:= _
xlNumberFormatTypePercent
En este caso, ha especificado que el miembro primario pertenece a la [Customer].[Customer Geography]
jerarquía, pero ha dado a la jerarquía primaria como [Account].[Accounts]
. Cuando se crea el miembro, usará la jerarquía primaria del miembro primario, que es [Customer].[Customer Geography]
, y cuando busque en el cuadro de diálogo Administrar cálculos de la interfaz de usuario, se mostrará [Customer].[Customer Geography]
como la jerarquía primaria en lugar de la especificada en la macro, es [Account].[Accounts]
decir, .
Ejemplo:
En el ejemplo de código siguiente se agrega una medida calculada a una tabla dinámica.
Nota:
En ambos ejemplos, la tabla dinámica debe actualizarse después de crear el cálculo para verlo en la interfaz de usuario.
Sub AddCalculatedMeasure()
Dim pvt As PivotTable
Dim strName As **String**
Dim strFormula As **String**
Dim strDisplayFolder As **String**
Dim strMeasureGroup As **String**
Set pvt = Sheet1.PivotTables("PivotTable1")
strName = "[Measures].[Internet Sales Amount 25 %]"
strFormula = "[Measures].[Internet Sales Amount]*1.25"
strDisplayFolder = "My Folder\Percent Calculations"
strMeasureGroup = "Internet Sales"
pvt.CalculatedMembers. AddCalculatedMember Name:=strName, Formula:=strFormula, Type:=xlCalculatedMeasure, DisplayFolder:=strDisplayFolder, MeasureGroup:=strMeasureGroup, NumberFormat:=xlNumberFormatTypePercent
End Sub
En el ejemplo de código siguiente se agrega un miembro calculado a una tabla dinámica.
Sub AddCalculatedMember()
Dim pvt As PivotTable
Dim strName As **String**
Dim strFormula As **String**
Dim strParentHierarchy As **String**
Dim strParentMember As **String**
Set pvt = Sheet1.PivotTables("PivotTable1")
strName = "[Customer].[Customer Geography].[All Customers].[North America]"
strFormula = "[Customer].[Customer Geography].[Country].&[United States] + [Customer].[Customer Geography].[Country].&[Canada]"
strParentHierarchy = "[Customer].[Customer Geography]"
strParentMember = "[Customer].[Customer Geography].[All Customers]"
pvt.CalculatedMembers. AddCalculatedMember Name:=strName, Formula:=strFormula, Type:=xlCalculatedMember, ParentHierarchy:=strParentHierarchy, ParentMember:=strParentMember, SolveOrder:=0, NumberFormat:=xlNumberFormatTypeDefault
End Sub
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de