0

次のデータがあるとします

Name   Date       Notional

Alice 10/1/2006&  1000  

Bob   12/5/2011  5000 

Dawn    1/1/2010   400

Alice   5/6/2009   500

Alice   7/13/2012   1500

Dawn    4/5/2012    100 

合計とパーセンテージの 2 つの列を追加したいと思います。ここで、Total は 1 人あたりの Notional を合計し、Percentage は与えられた Notional を Total のパーセンテージとして見ます。

したがって、アリスは、1000、500、および 1500 の 3 つの想定元数で、3 つの日付に 3 つの取引を行います。彼女の合計は 3000 になり、彼女の 3 つのパーセンテージは 33%、16.6%、および 50% になります。

したがって、私の最終結果は次のようになります。

Name    Date       Notional    Total    Percentage

Alice   10/1/2006  1000        3000       33%

Bob     12/5/2011  5000        5000       100% 

Dawn    1/1/2010   400         500        80%        

Alice   5/6/2009   500         3000       16.67% 

Alice   7/13/2012   1500       3000       50%  

Dawn    4/5/2012    100        500        20%

名前が一致する場合、全員の概念の合計を追加するマクロを作成したいと考えています。

したがって、私のセル D2 は C2 * Indicator(A2,A2) + C3 * Indicator(A3,A2) + C4*Indicator(A4,A2) + C5*Indicator(A5,A2) + C6*Indicator(A6=A2) になります。 + C7*インジケータ(A7=A2)

ここで、Indicator(Ak,A2) は、Range("Ak").Value=Range("A2").Value の場合に値 1 をとり、それ以外の場合は 0 を取る指標関数です。

そのような機能はありますか?自分で作成できると思います。

Public Function Indicator(c1 As Range, c2 As Range)
       Dim out As Integer
       If Range(c1).Value = Range(c2).Value Then
          out = 1
          Else: out = 0
          End If


End Function

これをより大きなコード内で実行しようとしています。しかし、現在、私は多くのエラーを受けています。実行できるようになったら更新します。

4

1 に答える 1

2

以下を使用してピボットテーブルを作成しました。

行: 名前 | 日にち

値: 想定 [SUM] | 想定 [親行合計の %]

于 2013-11-13T18:53:19.127 に答える