0
Excelのピボットテーブルの成功率を計算したいと思います。これは私のデザインです:ピボットテーブルのパーセンテージ数式
Row Labels Count Threshold-%
REG1 224 0.00%
FALSE 11
TRUE 213
REG2 213 0.00%
FALSE 13
TRUE 200
REG3 318 0.00%
FALSE 3
TRUE 315
REG4 467 0.00%
FALSE 7
TRUE 460
Grand Total 1222 0.00%
そして、これは私のVBAコードである:私は私が望むデザインを実行するための式を作成して苦労しています
Sub CreatePivotTable()
Dim sht As Worksheet
Dim pvtCache As PivotCache
Dim pvt As PivotTable
Dim StartPvt As String
Dim SrcData As String
Dim lRow As Long
Dim pf_name As String
pf_name = "Count of State"
lRow = Cells(Rows.Count, 12).End(xlUp).Row
'Data Range for Pivot Table
SrcData = ActiveSheet.Name & "!" & Range("A1:L" & lRow).Address(ReferenceStyle:=xlR1C1)
'Set Worksheet
Set sht = Worksheets("Metrics")
'Pivot Table Starting Point
StartPvt = sht.Name & "!" & sht.Range("A3").Address(ReferenceStyle:=xlR1C1)
'Create Pivot Cache from Source Data
Set pvtCache = ActiveWorkbook.PivotCaches.Create(_
SourceType:=xlDatabase, _
SourceData:=SrcData)
'Create Pivot Table From Pivot Cache
Set pvt = pvtCache.CreatePivotTable(_
TableDestination:=StartPvt, _
TableName:="PivotTable1")
Set pvt = Worksheets("Metrics").PivotTables("PivotTable1")
'Define Rows
sht.PivotTables("PivotTable1").AddFields RowFields:=Array("Region", "State")
'Create Count Column
With pvt.PivotFields("State")
.Orientation = xlDataField
.Function = xlCount
.Position = 1
.NumberFormat = "0"
End With
'Create Calculated Column
pvt.CalculatedFields.Add Name:="Threshold", Formula:="=SUM(True/True+False)"
'Populate Calculated Column
With pvt.PivotFields("Threshold")
.Orientation = xlDataField
.Function = xlSum
.Position = 2
.NumberFormat = "0.00%"
.Caption = "Threshold-%"
End With
'Show Grand Totals
pvt.ColumnGrand = True
pvt.RowGrand = True
End Sub
。これは、私が使用している行です:
'Create Calculated Column
pvt.CalculatedFields.Add Name:="Threshold", Formula:="=SUM(TRUE/TRUE+FALSE)"
すべて私はすべてのために100%です。 TRUEとFALSEの値にアクセスするにはどうしたら正しい式で使用できるのですか?
また、TRUEまたはFALSEのパーセンテージの合計を表示せずに、各地域のパーセンテージの合計(したがってP%= TRUE /(TRUE + FALSE)* 100)を表示したいだけです。それから私は、総計行の領域の割合の平均値を表示したいと思い、このように:
Row Labels Count Threshold-%
REG1 224 95.09%
FALSE 11
TRUE 213
REG2 213 93.90%
FALSE 13
TRUE 200
REG3 318 99.06%
FALSE 3
TRUE 315
REG4 467 98.50%
FALSE 7
TRUE 460
Grand Total 1222 96.64%
私は謝罪、私の質問wasnそれは私が思ったほど明確ではない。そのコードは機能していましたが、「国家総数」の総計と、その総計からの合計の割合を示していました。私が解決しようとしているのは、各地域の成功率(TRUEとFALSEの値に基づいて)です。その後、合計合計行に表示される結果の平均割合を取得します。 –
私は質問を編集して、 –
ピボットテーブルでこれを行う方法がわかりません。おそらく通常の数式を使用するか、VBAで計算する必要があります – tigeravatar