CalculatedMembers.AddCalculatedMember メソッド (Excel)

ピボットテーブルに集計フィールドまたは集計アイテムを追加します。

構文

AddCalculatedMember (Name, Formula, SolveOrder, Type, DisplayFolder, MeasureGroup, ParentHierarchy, ParentMember, NumberFormat)

CalculatedMembers オブジェクトを表す変数。

パラメーター

名前 必須 / オプション データ型 説明
名前 必須 文字列型 (String) 集計メンバーの名前を指定します。
Formula 必須 バリアント型 集計メンバーの数式。
SolveOrder 省略可能 バリアント型 (Variant) 集計メンバーの解決順序を指定します。
Type 省略可能 バリアント型 (Variant) 集計メンバーの型。
DisplayFolder 省略可能 バリアント型 計算メジャーを表示するための既存のフォルダー。
MeasureGroup 省略可能 バリアント型 計算されるメンバーが属するグループ。
ParentHierarchy 省略可能 バリアント型 ParentMember の親パス。
ParentMember 省略可能 バリアント型 集計メンバーの親。
NumberFormat 省略可能 バリアント型 計算メンバーに使用される数値の書式。

戻り値

CALCULATEDMEMBER

注釈

Formula 引数は有効な MDX (多次元式) 構文ステートメントである必要があります。 Name 引数は、オンライン分析処理 (OLAP) プロバイダーが受け付け可能である必要があります。

DisplayFolder

表示フォルダーは、計算メジャーに対してのみ有効です。 これらは、計算されたメンバーに対して有効ではありません。

文字列にはセミコロンを使用できます。 セミコロンは、複数の表示フォルダーを指定します。 たとえば、 Stringmyfolder1;myfolder2 を使用する場合、計算されたメジャーは、 myfolder1 という名前の 2 つの表示フォルダーと myfolder2 という名前の 2 つの表示フォルダーに表示されます。

String には円記号を\使用できます。 これにより、表示フォルダーの階層パスが指定されます。 たとえば、Stringwelcome\to\seattle を使用する場合、welcome という名前の表示フォルダーがあり、そのフォルダーには seattle という表示フォルダーが含まれているという表示フォルダーが含まれます。 表示フォルダーは仮想フォルダーです。システム フォルダーと同じ意味では存在しません。 これらは、計算メジャーを表示する目的でのみ存在します。

NumberFormat

数値形式はマクロによってのみ設定できます。 数値の書式を設定するためのユーザー インターフェイスはありません。 これは、ユーザー インターフェイスを通して設定できない唯一のプロパティです。 計算メンバーをユーザー インターフェイスを介して作成する場合の型は、常に xlNumberFormatTypeDefault です。 数値の書式は、計算メンバーに対してのみ有効です。 計算メジャーに対しては有効ではありません。

ParentHierarchy

親階層には、任意の有効な MDX 階層を指定できます。 親階層は計算メンバーに対してのみ有効です。 計算メジャーに対しては有効ではありません。 別の親階層内にある親メンバーを選択した場合、親階層は自動的に親メンバーの親階層と一致するように変更されます。 たとえば、計算されるメンバーに対して次のマクロがあるとします。

     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

この場合、親メンバーが階層から [Customer].[Customer Geography] であることを指定したが、親階層を として [Account].[Accounts]指定した。 メンバーが作成されると、親メンバーの親階層が使用されます。つまり[Customer].[Customer Geography]、UI の [計算の管理] ダイアログを見ると、マクロで指定された階層 (つまり) ではなく親階層として表示[Customer].[Customer Geography]されます。 [Account].[Accounts]

次のコード サンプルでは、計算メジャーを PivotTable に追加します。

注:

どちらのサンプルでも、計算を作成した後にピボットテーブルを更新して、ユーザー インターフェイスで表示する必要があります。

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

次のコード サンプルでは、計算メンバーを PivotTable に追加します。

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

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。