行に数字を繰り返す

行に数字を繰り返す

次のようなデータセットがあります:

City          Money   Code       Quantity
London        1.96    54645641    3         
London        1.96    54645641    3         
London        1.96    54645641    3   
London        1.96    54645641    3         
London        1.96    54645641    3         
London        1.96    54645641    3       
Madrid        200     158484      4         
Madrid        200     158484      4         
Madrid        200     158484      4         
Madrid        200     158484      4 
Madrid        200     158484      4         
Madrid        200     158484      4         
Madrid        200     158484      4         
Madrid        200     158484      4         
Denver        56.7    494681818   1 

そして、City のブロックを繰り返して各行に数値を追加し、Quantity の値を最大にしたいと思います。つまり、次のようになります。

City          Money   Code       Quantity result
London        1.96    54645641    3         1
London        1.96    54645641    3         2
London        1.96    54645641    3         3
London        1.96    54645641    3         1
London        1.96    54645641    3         2
London        1.96    54645641    3         3
Madrid        200     158484      4         1
Madrid        200     158484      4         2
Madrid        200     158484      4         3
Madrid        200     158484      4         4
Madrid        200     158484      4         1
Madrid        200     158484      4         2
Madrid        200     158484      4         3
Madrid        200     158484      4         4
Denver        56.7    494681818   1         1

COUNTIF 関数では期待した結果が得られません。

ご協力ありがとうございます

答え1

VBA を要求されたのは承知していますが、式はかなり単純です。

COUNTIF と変数範囲を指定した MOD を使用します。

=MOD(COUNTIF($A$2:A2,A2)-1,D2)+1

COUNTIF はカウントが減るにつれてカウントを返します。その後、MOD は余りを返します。

ここに画像の説明を入力してください

関連情報